1、拓扑图
AR1模拟DHCP客户端,获取192.168.12.0/24 网段地址,接口配置如图所示。
2、基于接口配置
AR2配置
dhcp enable #使能DHCP
interface GigabitEthernet0/0/0
ip address 192.168.12.2 255.255.255.0
dhcp select interface #配置为接口模式
dhcp server excluded-ip-address 192.168.12.100 192.168.12.254 #配置排除地址
dhcp server dns-list 114.114.114.114 #配置dns服务器地址(114.114.114.114为电信免费dns服务器地址)
dhcp server domain-name test.com #配置域名
dhcp server static-bind ip-address 192.168.12.10 mac-address 5489-9894-4549 #配置绑定地址,如打印机mac地址为489-9894-4549,使其获取地址为192.168.12.10
AR1配置
dhcp enable #使能DHCP
interface GigabitEthernet0/0/0
ip address dhcp-alloc #配置地址为dhcp分配
查看AR1的G0/0/0接口mac地址为00e0-fcea-304e,获取到的ip地址为192.168.12.99/24 (思考1:为什么会获取到192.168.12.99 ,而不是其他地址?)
查看AR2G0/0/0接口mac地址为00e0-fc37-5f9f,ip地址为192.168.12.2/24(抓包分析需要用到mac地址)
3.基于全局配置
AR2 清除int G0/0/0接口dhcp配置,配置dhcp为全局模式
interface GigabitEthernet0/0/0
ip address 192.168.12.2 255.255.255.0
undo dhcp select interface #取消dhcp select interface,dhcp相关配置被清空
undo dhcp server static-bind ip-address 192.168.12.10 mac-address 5489-9894-4549
undo dhcp server excluded-ip-address 192.168.12.100 192.168.12.254
undo dhcp server dns-list 114.114.114.114
undo dhcp server domain-name test.com
dhcp select global
AR2配置全局地址池
ip pool quanju #地址池名为quanju
gateway-list 192.168.12.2
network 192.168.12.0 mask 255.255.255.0
excluded-ip-address 192.168.12.3 192.168.12.254 #思考2:此时AR1G0/0/0接口获取ip地址为多少?
dns-list 114.114.114.114
domain-name test.com
AR1重新获取ip地址
int g0/0/0
undo ip add dhcp-alloc
ip add dhcp-alloc
4.基于中继配置
拓扑和上面一致,再次出现便于查看
清空AR2 G0/0/0,AR1G0/0/0接口配置
AR3配置全局地址池
dhcp enable
ip pool zhongji
gateway-list 192.168.12.2
network 192.168.12.0 mask 255.255.255.0
excluded-ip-address 192.168.12.10 192.168.12.254
dns-list 114.114.114.114
domain-name test.com
interface GigabitEthernet0/0/0
ip address 172.16.23.3 255.255.255.0
dhcp select global
AR2G0/0/0接口配置为DHCP中继
interface GigabitEthernet0/0/0
ip address 192.168.12.2 255.255.255.0
dhcp select relay
dhcp relay server-ip 172.16.23.3
interface GigabitEthernet0/0/1
ip address 172.16.23.2 255.255.255.0
AR1配置
interface GigabitEthernet0/0/0
undo ip address dhcp-alloc
ip address dhcp-alloc
思考3:此时AR1G0/0/0能获取到ip地址吗?
AR3添加到192.168.12.0静态路由
ip route-static 192.168.12.0 24 172.12.23.2
查看AR1G0/0/0接口获取ip
5 wireshark抓包分析
5.1 DHCP 报文交互过程
5.2 DHCP 报文
完整报文
DHCP discovery 数据封装过程
二层(数据链路层) 源 mac:00e0-fcea-304e(AR1G0/0/0mac地址) 目的mac:ffff-ffff-ffff(广播)
三层 (网络层) 源ip:0.0.0.0 目的ip:255.255.255.255(广播)
四层 (传输层) 协议 UDP,源端口 68,目的端口 67
五-七层 DHCP discovery(应用层)
DHCP discovery报文请求参数
DHCP offer 数据解封装过程
五-七层 DHCP offer(应用层)
四层 (传输层) UDP 源端口67, 目的端口 68
三层(网络层) 源ip 192.168.12.2 目的ip 192.168.12.99
二层(数据链路层)源mac 00e0-fc37-5f9f (AR2G0/0/0接口mac) 目的mac 00e0-fcea-304e(AR1G0/0/0接口mac)
DHCP offer报文回应参数
思考1:为什么会获取到192.168.12.99 ,而不是其他地址?
答:因为华为设备dhcp地址分配从大到小
思考2:此时AR1G0/0/0接口获取ip地址为多少?
答:192.168.12.1
思考3:此时AR1G0/0/0能获取到ip地址吗?
答:不能,因为没有到192.168.12.0/24的路由