前言:DHCP请求报文是以广播包方式发送的,当DHCP服务器与DHCP客户端不在同一网段时,就需要在三层网关设备配置DHCP中继功能 。
为能更好理解DHCP Relay功能,建议先看看DHCP Server的内容
https://blog.csdn.net/weixin_58574637/article/details/137583174?spm=1001.2014.3001.5502
工作原理:
1. DHCP中继收到DHCP DISCOVER报文后,处理规则为:
▫ 检查DHCP报文中的Hops字段,如果大于16,则丢弃DHCP报文;否则,将Hops字段
加1(表明经过一次DHCP中继),并继续下面的操作。
▫ 检查DHCP报文中的Giaddr字段。如果是0,将Giaddr字段设置为接收DHCP
DISCOVER报文的接口IP地址。如果不是0,则不修改该字段,继续下面的操作。
▫ 将DHCP报文的目的IP地址改为DHCP服务器或下一跳中继的IP地址,源地址改为中继
连接客户端的接口地址,通过路由转发将DHCP报文单播发送到DHCP服务器或下一
跳中继。
2. DHCP服务器接收到DHCP DISCOVER报文后,选择与报文中Giaddr字段为同一网段的地址
池,并为客户端分配IP地址等参数,然后向Giaddr字段标识的DHCP中继单播发送DHCP
OFFER报文,DHCP中继收到DHCP OFFER报文后,会进行如下处理:
▫ 检查报文中的Giaddr字段,如果不是接口的地址,则丢弃该报文;否则,继续下面的
操作。
▫ DHCP中继检查报文的广播标志位。如果广播标志位为1,则将DHCP OFFER报文广播
发送给DHCP客户端;否则将DHCP OFFER报文单播发送给DHCP客户端。
实验拓扑:
配置命令:
路由器做DHCP服务器,配置如下:
交换机做DHCP中继,配置如下: