配置DHCP服务和中继代理(Ensp+CentOS)

9 篇文章 0 订阅

一、DHCP中继的概念

在之前的博文《配置和管理DHCP服务器》中,介绍了DHCP客户端和DHCP服务器在同一个广播域中时,DHCP的工作机制。

事实上,如果DHCP客户端与DHCP服务器在同一个广播域,则客户端可以正确的获得动态分配的IP地址;然而,如果DHCP客户端与DHCP服务器不处于同一个广播域,那么DHCP客户端广播的DHCP Discover报文,会被网络中的三层设备丢弃,无法被DHCP服务器接收,此时,就需要DHCP中继代理(DHCP Relay Agent)。

DHCP中继可以实现在不同广播域(如子网、Vlan)之间处理和转发DHCP工作时的广播报文,使得DHCP客户端可以跨网段获取IP地址及相关参数。

二、DHCP中继的工作原理

有DHCP中继的场景中,DHCP中继在DHCP服务器和DHCP客户端之间转发DHCP报文,以保证DHCP服务器和DHCP客户端可以正常交互,下图示意了中继情形下,DHCP客户端与DHCP服务器的报文交互过程。

在有中继的情形下,DHCP客户端申请IP地址仍然分为四个阶段:发现、提供、请求和确认(否认)。只是客户端发送的报文会被同广播域内的DHCP中继收到,然后由DHCP中继将DHCP报文以单播的形式转发给服务器,同样,服务器响应的DHCP报文以单播形式发给DHCP中继,然后再由中继转发给客户端。

三、企业DHCP应用1:华为设备做DHCP Relay,CentOS做DHCP Server

3.1 案例描述

某公司DHCP服务器采用单作用域结构,为公司设备分配192.168.200.0/24网段的IP。由于公司规模扩大,在研发部基础上,新成立了市场部,公司设备数量增加,原来的DHCP服务器无法满足需求。因此公司网络管理员基于多作用域,重新架设DHCP服务器。

3.2 案例分析

根据需求,公司搭建网络拓扑如下:

1、使用Vlan规划网络,研发部客员工属于Vlan10,分配地址段为192.168.10.0/24,市场部员工属于Vlan20,分配地址段为192.168.20.0/24,公司服务器属于Vlan200,地址段为192.168.200.0/24。

2、DHCP服务器使用CentOS7搭建DHCP服务,服务器配置多作用域。使用华为AR系列路由器做DHCP中继,并负责路由和出口网关。

3、IP地址规划如下表:

设备接口IP地址网关
DHCP服务器网卡192.168.200.100/24192.168.200.254
DHCP中继10号子接口192.168.10.254/24-
DHCP中继20号子接口192.168.20.254/24-
DHCP中继200号子接口192.168.200.254/24-
研发部客户端网卡192.168.10.0/24192.168.10.254
市场部客户端网卡192.168.10.0/24192.168.20.254
3.3 案例模拟环境

1、模拟拓扑

本案例使用VMware Workstation 15 pro和华为Ensp平台完成配置。拓扑如下图所示:

DHCP中继使用AR2220,接入交换机使用S3700,连接接口如图所示,特别是使用Ensp中的云连接WMware平台搭建的DHCP服务器。

2、VMware Workstation设置

本实验用的DHCP服务器网卡选择VMnet8,由于VMware Workstation的NAT网络默认开启了DHCP服务,为了防止影响实验,需要事先将其DHCP功能关闭,执行【编辑】菜单下的【虚拟网络编辑器】命令,设置子网IP为“192.168.200.0”,取消勾选“使用本地DHCP服务将IP地址分配给虚拟机”,如图所示。

实验中DHCP服务器的网卡IP地址为192.168.200.100/24,网关配置为192.168.200.254。关闭防火墙和SELinux,配置好YUM源。

[root@server ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE="Ethernet"
BOOTPROTO="static"
NAME="ens33"
DEVICE="ens33"
ONBOOT="yes"
IPADDR="192.168.200.100"
GATEWAY="192.168.200.254
PREFIX="24"

3、Ensp中云的设置

在Ensp中添加云,用于将Ensp中的交换机桥接到VMware 的VMnet8网卡。双击云图标,在下图所示的对话框中单击“增加”。

然后再绑定信息中选择VMnet8,单击“增加”,如下图:

最后在“端口映射设置”中将“入口编号”设置为1,“出口编号”设置为2,勾选“双向通道”,单击“增加”按钮。这步可以将VMware中的DHCP服务器加入到上面的Ensp拓扑中。

3.4 配置接入交换机

接入交换机主要是配置Vlan和端口,具体配置如下:

<Huawei>system-view
[Huawei]sysname Access
[Access]vlan batch 10 20 200                                #创建Vlan 10 20 200
​
[Access]interface Ethernet 0/0/1                            #配置E0/0/1为trunk端口
[Access-Ethernet0/0/1]port link-type trunk
[Access-Ethernet0/0/1]port trunk allow-pass vlan 10 20 200  
[Access-Ethernet0/0/1]quit
​
[Access]interface Ethernet 0/0/2                            #配置E0/0/2为access端口
[Access-Ethernet0/0/2]port link-type access
[Access-Ethernet0/0/2]port default vlan 10
[Access-Ethernet0/0/2]quit
​
[Access]interface Ethernet 0/0/3                            #配置E0/0/3为access端口
[Access-Ethernet0/0/3]port link-type access
[Access-Ethernet0/0/3]port default vlan 20
[Access-Ethernet0/0/3]quit
​
[Access]interface Ethernet 0/0/4                            #配置E0/0/4为access端口
[Access-Ethernet0/0/4]port link-type access
[Access-Ethernet0/0/4]port default vlan 200
[Access-Ethernet0/0/4]quit
[Access]quit
<Access>save
3.5 路由器(DHCP中继)配置

路由器启用DHCP,并配置单臂路由,G0/0/0的10号子接口和20号子接口配置DHCP中继。

<Huawei>system-view
[Huawei]sysname DHCP Relay
[DHCP Relay]dhcp enable
#配置10号子接口:单臂路由和DHCP中继
[DHCP Relay]interface GigabitEthernet 0/0/0.10
[DHCP Relay-GigabitEthernet0/0/0.10]ip address 192.168.10.254 24
[DHCP Relay-GigabitEthernet0/0/0.10]dot1q termination vid 10
[DHCP Relay-GigabitEthernet0/0/0.10]arp broadcast enable
[DHCP Relay-GigabitEthernet0/0/0.10]dhcp select relay
[DHCP Relay-GigabitEthernet0/0/0.10]dhcp relay server-ip 192.168.200.100
[DHCP Relay-GigabitEthernet0/0/0.10]quit
#配置20号子接口:单臂路由和DHCP中继
[DHCP Relay]interface GigabitEthernet 0/0/0.20
[DHCP Relay-GigabitEthernet0/0/0.20]ip address 192.168.20.254 24
[DHCP Relay-GigabitEthernet0/0/0.20]dot1q termination vid 20
[DHCP Relay-GigabitEthernet0/0/0.20]arp broadcast enable
[DHCP Relay-GigabitEthernet0/0/0.20]dhcp select relay
[DHCP Relay-GigabitEthernet0/0/0.20]dhcp relay server-ip 192.168.200.100
[DHCP Relay-GigabitEthernet0/0/0.20]quit
#配置200号子接口:单臂路由
[DHCP Relay]interface GigabitEthernet 0/0/0.200
[DHCP Relay-GigabitEthernet0/0/0.200]ip address 192.168.200.254 24
[DHCP Relay-GigabitEthernet0/0/0.200]dot1q termination vid 200
[DHCP Relay-GigabitEthernet0/0/0.200]arp broadcast enable
[DHCP Relay-GigabitEthernet0/0/0.200]quit
[DHCP Relay]quit
<DHCP Relay>save
3.6 DHCP服务器配置

1、安装DHCP服务器

[root@server ~]# yum install dhcp -y

2、配置DHCP服务器

[root@server ~]# vim /etc/dhcp/dhcpd.conf

配置文件内容如下:

option domain-name "example.org";
option domain-name-servers 8.8.8.8;
​
default-lease-time 86400;
max-lease-time 86400;
​
log-facility local7;
​
subnet 192.168.200.0 netmask 255.255.255.0 {
}
​
subnet 192.168.10.0 netmask 255.255.255.0 {
  range 192.168.10.168 192.168.10.238;
  option routers 192.168.10.254;
}
​
subnet 192.168.20.0 netmask 255.255.255.0 {
  range 192.168.20.168 192.168.20.238;
  option routers 192.168.20.254;
}

3、重启DHCP服务

[root@server ~]# systemctl restart dhcpd
3.7 DHCP服务器上添加默认路由

因为DHCP服务器和研发部(Vlan10)、市场部(Vlan20)所处的Vlan不同,因此提供DHCP服务需要依赖于路由器的中继,这里要保证DHCP服务器与上面路由器的10号子接口和20号子接口能够单播通信,为此,添加一条默认路由。

[root@server ~]# ip route add default via 192.168.200.254
[root@server ~]# netstat -rn
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         192.168.200.254 0.0.0.0         UG        0 0          0 ens33
192.168.200.0   0.0.0.0         255.255.255.0   U         0 0          0 ens33
3.8 DHCP客户端设置并测试

将PC1和PC2的IP地址配置方式设置成DHCP。在研发部主机PC1上测试,结果如下图:

在市场部主机PC2上测试,结果如下图:

测试两台DHCP客户端的通信情况。

四、企业DHCP应用2:华为设备做DHCP Server,CentOS做DHCP Relay

4.1 案例描述

说明:本案例只为模拟如何使用CentOS做DHCP中继,实际网络很少这么设计。

某公司使用三层交换机做DHCP服务器,为公司研发部和市场部分配IP地址,由于公司使用Vlan规划网络,研发部和市场部属于不同的Vlan。为此,使用了CentOS服务器做DHCP中继,网络拓扑如下图所示:

4.2案例模拟环境说明

1、研发部和市场部分别位于Vlan10和Vlan20,地址段分别为192.168.10.0/24和192.168.20.0/24;

2、DHCP Server做DHCP服务器,桥接CentOS服务器的VMnet8网卡;

3、DHCP Relay1做用户接入和DHCP中继,桥接CentOS服务器的VMnet1网卡;

4、CentOS服务器做DHCP中继(这个实验用了两个中继);

5、VMnet1地址段为192.168.100.0/24,VMnet8地址段为192.168.200.0/24;

6、IP地址规划如下表:

设备接口IP地址网关备注
DHCP ServerVlanif 200192.168.200.254/24-服务器
DHCP中继-CentOSVMnet1网卡(ens37)192.168.100.100/24-中继代理
DHCP中继-CentOSVMnet8网卡(ens33)192.168.200.100/24-
DHCP中继-交换机Vlanif 100192.168.100.254/24-中继代理
DHCP中继-交换机Vlanif 10192.168.10.254/24
DHCP中继-交换机Vlanif 20192.168.20.254/24
研发部客户端网卡192.168.10.0/24192.168.10.254
市场部客户端网卡192.168.10.0/24192.168.20.254
4.3 配置接入交换机DHCP Relay1
#
sysname DHCP Relay1
#
vlan batch 10 20 100
#
dhcp enable
#
interface Vlanif10
 ip address 192.168.10.254 255.255.255.0
 dhcp select relay
 dhcp relay server-ip 192.168.100.100
#
interface Vlanif20
 ip address 192.168.20.254 255.255.255.0
 dhcp select relay
 dhcp relay server-ip 192.168.100.100
#
interface Vlanif100
 ip address 192.168.100.254 255.255.255.0
#
interface GigabitEthernet0/0/1
 port link-type access
 port default vlan 100
#
interface GigabitEthernet0/0/2
 port link-type access
 port default vlan 10
#
interface GigabitEthernet0/0/3
 port link-type access
 port default vlan 20
#
ip route-static 0.0.0.0 0.0.0.0 192.168.100.100
4.4 配置DHCP服务器DHCP Server 
#
sysname DHCP Server
#
vlan batch 200
#
dhcp enable
#
ip pool scb
 gateway-list 192.168.20.254
 network 192.168.20.0 mask 255.255.255.0
 dns-list 8.8.8.8
#
ip pool yfb
 gateway-list 192.168.10.254
 network 192.168.10.0 mask 255.255.255.0
 dns-list 8.8.8.8
#
interface Vlanif200
 ip address 192.168.200.254 255.255.255.0
 dhcp select global
#
interface GigabitEthernet0/0/1
 port link-type access
 port default vlan 200
#
ip route-static 0.0.0.0 0.0.0.0 192.168.200.100
4.5 配置CentOS中继服务器路由转发

1、添加路由

[root@server ~]# ip route add 192.168.10.0/24 via 192.168.100.254
[root@server ~]# ip route add 192.168.20.0/24 via 192.168.100.254
[root@server ~]# netstat -rn
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
192.168.10.0    192.168.100.254 255.255.255.0   UG        0 0          0 ens37
192.168.20.0    192.168.100.254 255.255.255.0   UG        0 0          0 ens37
192.168.100.0   0.0.0.0         255.255.255.0   U         0 0          0 ens37
192.168.200.0   0.0.0.0         255.255.255.0   U         0 0          0 ens33

2、启用IPv4路由转发

[root@server ~]# echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
[root@server ~]# sysctl -p
net.ipv4.ip_forward = 1
4.6 配置DHCP中继代理

1、安装DHCP服务器

[root@server ~]# yum install dhcp -y

2、配置中继代理

[root@server ~]# cp /lib/systemd/system/dhcrelay.service /etc/systemd/system
[root@server ~]# vim /etc/systemd/system/dhcrelay.service

修改如下

[Unit]
Description=DHCP Relay Agent Daemon
Documentation=man:dhcrelay(8)
Wants=network-online.target
After=network-online.target
​
[Service]
Type=notify
ExecStart=/usr/sbin/dhcrelay -d --no-pid 192.168.200.100   #只修改了这一行
​
[Install]
WantedBy=multi-user.target

重载配置信息

[root@server ~]# systemctl --system daemon-reload

3、重新启动DHCP中继服务

[root@server ~]# systemctl restart dhcrelay.service
[root@server ~]# systemctl enable dhcrelay.service
4.7 配置客户端

将PC1和PC2的IP地址配置方式设置成DHCP。在研发部主机PC1上测试,结果如下图:

在市场部主机PC2上测试,结果如下图:

测试两台DHCP客户端的通信情况。

五、总结

在做DHCP中继过程中,为保证DHCP中继代理和DHCP服务器之间能够正常单播通信,不论在什么设备上配置,都要配置好路由。

  • 35
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hongmayi3753

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值