1、DHCP relay工作原理
DHCP Relay即DHCP中继,它实现了不同网段间的DHCP服务器和客户端之间的报文交互。
DHCP中继承担处于不同网段间的DHCP客户端和服务器之间中继服务,将DHCP协议报文跨网段透传到目的DHCP服务器,最终使网络上的DHCP客户端可以共同使用一个DHCP服务器。
2、DHCP relay工作流程
1、终端在连接到网络时广播一个DHCP请求消息(DHCP Discover)。DHCP中继设备收到这个广播消息,并将其转换为单播消息(DHCP Request),转发给DHCP Server。
2、DHCP服务器接收到单播消息后,为设备分配IP地址和其他配置,并发送DHCP响应消息(DHCP Offer)。DHCP中继设备收到DHCP响应消息后,将其转换为广播消息,并在相应的子网上进行广播。
3、终端收到DHCP响应消息后,确认需要使用该ip地址,则广播request报文给DHCP中继设备,DHCP中继设备收到request后,将其转化为单播报文,转发给DHCP Server。
4、DHCP Server 单播ACK给DHCP中继设备,DHCP中继设备转发ACK给到终端。至此终端获取到跨网段的DHCP Server的IP地址。
3、ensp模拟
R1
#
dhcp enable // 开启DHCP功能
#
ip pool 10 // 创建地址池,准备给PC分配地址
gateway-list 192.168.1.254 // 网关地址
network 192.168.1.0 mask 255.255.255.0 // 要分配的网段
#
interface GigabitEthernet0/0/0
ip address 12.1.1.1 255.255.255.0 // 给连接的交换机的接口配置IP
dhcp select global // 开启DHCP,使用全局地址池
#
ip route-static 192.168.1.0 255.255.255.0 12.1.1.2 // 配置静态路由,保证路由可达
#-------------------------------------------
SW1
#
vlan batch 10 12
#
dhcp enable // 开启DHCP功能
#
#
// 配置PC的网段VLAN,并设置DHCP中继
interface Vlanif10
ip address 192.168.1.254 255.255.255.0
dhcp select relay // dhcp模式为中继
dhcp relay server-ip 12.1.1.1 // 指定dhcp服务器的ip
#
// 配置互联DHCP服务器的网段vlan
interface Vlanif12
ip address 12.1.1.2 255.255.255.0
#
// 修改接口vlan。vlan10连接PC,vlan12用于连接DHCP服务器
interface GigabitEthernet0/0/1
port link-type access
port default vlan 12
interface GigabitEthernet0/0/2
port link-type access
port default vlan 10
#
4、抓包
PC1 eth0 MAC:54-89-98-39-58-C0
PC eth0 连接sw1 GE0/0/2接口抓包:
R1 GE0/0/0接口抓包: