发地址前先探测一下
网络里经常存在手工配置的静态地址,这些地址不在 DHCP 服务器的分配记录里,服务器却可能把它们分配给其他终端,造成地址冲突。解决办法是在分配前先探测:服务器对目标地址发若干次 ICMP 请求,如果收到回应就说明该地址已被占用,暂时跳过并在冲突列表中记录下来。代价是每次分配会多出几百毫秒的等待时间,探测次数越多延迟越明显。
基本信息
| 适用场景 | 网段内存在大量手工静态地址 |
|---|---|
| 华为命令 | dhcp server ping packet 次数、dhcp server ping timeout 毫秒 |
| 思科命令 | ip dhcp ping packets、ip dhcp ping timeout(默认开启探测) |
| H3C 命令 | dhcp server ping packets、dhcp server ping timeout |
| 核心权衡 | 探测提高准确性,也增加分配延迟 |
典型使用场景
- 混合地址网段:终端用 DHCP,打印机与摄像头等设备使用手工静态地址
- 冲突投诉处理:用户偶发上不了网,排查后发现地址被他人占用
- 变更评估:关闭探测以加快分配时,评估冲突风险是否可接受
- 新网段上线:地址规划不完整时,用探测作为过渡期的保护措施
- 冲突记录核查:定期查看冲突地址列表,找出被误用的地址段
华为 VRP
华为 VRP
[Huawei] dhcp server ping packet 3 ! 探测请求次数
[Huawei] dhcp server ping timeout 500 ! 单次等待毫秒数
<Huawei> display dhcp server statistics ! 查看冲突与探测统计
<Huawei> display dhcp server conflict all ! 冲突地址列表(部分平台)思科 IOS 与 H3C
思科 IOS 与 H3C
! 思科 IOS:缺省即开启探测
SW-CORE-01(config)# ip dhcp ping packets 2
SW-CORE-01(config)# ip dhcp ping timeout 500
SW-CORE-01# show ip dhcp conflict
! H3C Comware
[H3C] dhcp server ping packets 2
[H3C] dhcp server ping timeout 500
[H3C] display dhcp server conflict all参数怎么调
| 参数 | 含义 | 调整方向 |
|---|---|---|
| 探测次数 | 分配前发出的探测报文数量 | 次数越多越可靠,延迟也越大 |
| 探测超时 | 单次等待回应的毫秒数 | 网络抖动大时可适当放大 |
| 探测开关 | 是否启用分配前探测 | 混合静态地址的网段应保持开启 |
| 冲突列表 | 被判定为冲突而跳过的地址 | 定期核查,找出被误占的地址段 |
探测只覆盖服务器认为空闲的地址。已分配出去的租约在有效期内不会被重复探测,因此它解决的是与手工静态地址冲突的问题,不替代完整的地址规划与管理。
关闭探测能明显加快地址分配,在大量终端同时上线的场景下速度差异可以感知。是否关闭取决于网段里手工地址的比例与风险承受能力,不能一概而论。