DHCP和DHCP中继


DHCP:动态主机配置协议,是一个局域网的网络协议,使用UDP协议工作。

主要有两个用途:

1、给内部网络或者网络服务供应商自动分配IP地址。
2、给用户或者内部网络管理员作为对所有计算机中央管理的手段。

使用DHCP的好处:

1、减少管理员的工作量
2、避免输入错误的可能
3、避免IP地址冲突
4、当更改IP地址段时,不需要重新配置每个用户的IP地址
5、提高了IP地址的利用率
6、方便客户端的配置

DHCP协议采用UDP作为传输协议,主机发送请求到DHCP服务器的67号端口,DHCP服务器回应应答消息给客户端的68号端口。

DHCP的IP地址自动获取工作原理:

第一步:客户端在网络中搜索服务器,客户端通过广播发送DHCP Discover报文寻找服务器端。
第二步:服务端通过单播发送DHCP offer报文向客户端提供IP地址等网络信息,从IP地址池中挑选一个尚未分配的IP地址分配给客户端。
第三步:客户端向服务器发出服务请求,如果多台DHCP服务器向该客户端发来DHCP offer报文,客户端只接受第一个收到的DHCP offer报文并提取IP地址,
然后客户端通过广播发送DHCP Request报文告知服务器端本地选择使用该IP地址。
第四步:服务器向客户端提供服务,服务器通过单播发送DHCP ACK报文告知客户端IP地址是合法可用的,并在选项字段中增加IP地址的使用租期信息。
第五步:DHCP客户机每次重新登录网络时,不需要再发送DHCP Discover 信息,而是直接发送包含前一次所分配的IP地址的DHCP Request请求信息。
第六步:更新租约;当DHCP服务器向客户机出租的IP地址租期到50%时,就需要更新租约。客户机直接向提供租约的服务器发送DHCP Request包,要求更新现有的地址租约。
DHCP请求的过程.jpg


DHCP的模式和配置:

1、接口模式
接口地址池可动态分配IP地址,范围就是接口的IP地址所在的网段,且只在此接口下生效,当DHCP服务器收到DHCP客户端的请求报文后,DHCP服务器将会使用该接口的地址网段给客户端分配地址。

dhcp enable //系统模式开启DHCP功能
int g0/0/0
dhcp select interface ///基于接口配置DHCP
dhcp server lease day 7 ///配置基于接口的DHCP servser 租期(默认租期为1天)
dhcp server excluded-ip-address 192.168.10.200 192.18.10.210 ///配置接口地址池中不参与分配的IP地址范围为192.168.10.200到192.168.10.210
dhcp server dns-list 8.8.8.8 ///给用户端自动分配DNS服务器地址

2、全局模式
全局方式下,设置多个全局地址池,并存在定义的地址池网段与端口IP是同一个网段的对应关系,即多个不同网段地址池对应各自的端口,最终实现不同网段客户端自动获取响应地址

dhcp enable //系统模式开启DHCP功能
ip pool 1 //创建地址池名称
gateway-list 192.168.20.1 //设置DHCP客户端的出口网关地址
network 192.168.20.0 mask 255.255.255.0 //配置DHCP可分配地址网段,掩码也可以用24表示

dns-list 114.114.114.114 //配置DHCP分配DNS地址
excluded-ip-address 192.168.20.250 192.168.20.254 //配置保留地址
static-bind ip-address 192.168.20.9 mac-address 5489-98C6-0CEE //绑定IP 192.168.20.9 固定分配给MAC为5489-98C6-0CEE的机器,需要池中IP
lease day 10 //租期10天

int g0/0/0
dhcp select global //配置DHCP为global全局模式,interface即接口模式
display ip pool //查看IP地址池信息


DHCP中继


应用场景:
在大型的网络中,可能会存在多个网段。DHCP客户机通过网络广播消息获得DHCP服务器的响应后得到IP地址。但广播消息是不能跨越网段的。因此,如果DHCP客户机和服务器在不同的网段内,
客户机还能不能向服务器申请IP地址呢?这就是要到DHCP中继代理。DHCP中继代理实际上是一种软件技术,安装在DHCP中继代理的设备(路由器、交换机、服务器)成为DHCP中继代理服务器,
它承担不同网段间的DHCP客户机和服务器的通信任务。

工作原理:

当DHCP客户端启动并进行DHCP初始化时,它在本地网络广播配置请求报文。
如果本地网络存在DHCP服务器,则可以直接进行DHCP配置,不需要DHCP中继。
如果本地网络没有DHCP服务器,则与本网络相连的且带DHCP中继功能的网络设备收到该广播报文后,进行适当的处理并转发给指定的在其它网络上的DHCP服务器。
DHCP服务器根据客户端提供的信息进行相应的配置,并通过DHCP中继将配置信息发送给客户端,完成对客户端的动态配置。

配置DHCP中继服务器:

dhcp enable
int g0/0/1 //与客户端相连的接口
ip add 192.168.1.1 24
dhcp select relay //开启DHCP中继功能
dhcp relay server-ip 12.0.0.1 //指向DHCP服务器的地址12.0.0.1请求DHCP服务

ip route-static 0.0.0.0 0.0.0.0 12.0.0.1 //如果DHCP中继服务器与DHCP服务器跨网段则要配置静态路由或者动态路由

配置DHCP服务器:
dhcp enable
int g0/0/0 //与DHCP中继连接方向的接口
ip add 12.0.0.1 24
dhcp select global //给接口配置为全局模式, 请求DHCP服务

ip pool 1
gateway-list 192.168.1.1
network 192.168.1.0 mask 255.255.255.0

dns-list 114.114.114.114
lease day 3 //租期为3天

ip route-static 192.168.1.0 255.255.255.0 12.0.0.2 //记得要配置静态/默认路由或者动态路由


实例演示:


DHCP实例拓扑.jpg


R3的配置:(DHCP服务器的配置)
<Huawei>sys
[Huawei]sys R3
[R3]un in en    
[R3]user-interface console0 
[R3-ui-console0]idle-timeout 0 0
[R3-ui-console0]q
[R3]int g0/0/0
[R3-GigabitEthernet0/0/0]ip add 23.0.0.3 24
[R3-GigabitEthernet0/0/0]un sh
[R3-GigabitEthernet0/0/0]q
[R3]dhcp en
[R3]ip pool 1
[R3-ip-pool-1]gateway-list 192.168.100.1 
[R3-ip-pool-1]netw 192.168.100.0 mask 24
[R3-ip-pool-1]static-bind ip-address 192.168.100.88 mac-address 5489-984B-290B
[R3-ip-pool-1]dns-list 8.8.8.8  
[R3-ip-pool-1]lease day 10
[R3-ip-pool-1]q
[R3]ip poo 2
[R3-ip-pool-2]gateway-list 192.168.200.1
[R3-ip-pool-2]netw 192.168.200.0 mask 24        
[R3-ip-pool-2]static-bind ip-address 192.168.200.66 mac-address 5489-980B-01B5
[R3-ip-pool-2]dns-list 114.114.114.114
[R3-ip-pool-2]lease day 10
[R3-ip-pool-2]q
[R3]int g0/0/0
[R3-GigabitEthernet0/0/0]dhcp select global 
[R3-GigabitEthernet0/0/0]q
[R3]ip route-static 0.0.0.0 0.0.0.0 23.0.0.2
[R3]

R1的配置:(DCHP中继的配置)
<Huawei>sys
[Huawei]sys R1
[R1]un in en    
[R1]user-interface console 0    
[R1-ui-console0]idle-timeout 0 0
[R1-ui-console0]q
[R1]int g0/0/1
[R1-GigabitEthernet0/0/1]ip add 192.168.200.1 24
[R1-GigabitEthernet0/0/1]un sh
[R1-GigabitEthernet0/0/1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip add 192.168.100.1 24
[R1-GigabitEthernet0/0/0]un sh
[R1-GigabitEthernet0/0/0]int g0/0/2
[R1-GigabitEthernet0/0/2]ip add 12.0.0.1 24
[R1-GigabitEthernet0/0/2]un sh
[R1-GigabitEthernet0/0/2]q
[R1]dhcp en
[R1]int g0/0/0  
[R1-GigabitEthernet0/0/0]dhcp select relay  
[R1-GigabitEthernet0/0/0]dhcp relay server-ip 23.0.0.3
[R1-GigabitEthernet0/0/0]dis th
[V200R003C00]
#
interface GigabitEthernet0/0/0
 ip address 192.168.100.1 255.255.255.0 
 dhcp select relay
 dhcp relay server-ip 23.0.0.3
#
return
[R1-GigabitEthernet0/0/0]int g0/0/1 
[R1-GigabitEthernet0/0/1]dhcp select relay 
[R1-GigabitEthernet0/0/1]dhcp relay server-ip 23.0.0.3
[R1-GigabitEthernet0/0/1]q          
[R1]ip route-static 23.0.0.0 24 12.0.0.2
[R1]int g0/0/1
[R1-GigabitEthernet0/0/1]dis th
[V200R003C00]
#
interface GigabitEthernet0/0/1
 ip address 192.168.200.1 255.255.255.0 
 dhcp select relay
 dhcp relay server-ip 23.0.0.3
#
return
[R1-GigabitEthernet0/0/1]q
[R1]

R2的配置:
<Huawei>sys 
[Huawei]sys R2
[R2]un in en    
[R2]user-interface console 0    
[R2-ui-console0]idle-timeout 0 0
[R2-ui-console0]q
[R2]int g0/0/0
[R2-GigabitEthernet0/0/0]ip add 12.0.0.2 24
[R2-GigabitEthernet0/0/0]un sh
[R2-GigabitEthernet0/0/0]int g0/0/1
[R2-GigabitEthernet0/0/1]ip add 23.0.0.2 24
[R2-GigabitEthernet0/0/1]un sh
[R2-GigabitEthernet0/0/1]q
[R2]ip route-static 192.168.100.0 24 12.0.0.1
[R2]ip route-static 192.168.200.0 24 12.0.0.1
[R2]

实验结果图1.jpg


实验结果图2.jpg


实验结果3.jpg
实验结果4.jpg