跨网段找统一地址服务器
当地址服务器不在同一网段时,需要网关设备承担转发角色:把客户端发出的广播请求转换成单播转发给服务器,并把自己的接口地址填入转发字段,服务器据此判断该分配哪个网段。华为的做法是接口下选择中继模式并指定服务器地址。这个字段填错或服务器上没有对应网段的地址池,都会出现请求到达服务器却不应答的情况。
基本信息
| 适用设备 | 华为 VRP 路由器与三层交换机 |
|---|---|
| 命令族 | 接口下 dhcp select relay 与 dhcp relay server-ip |
| 转发字段 | 由中继填入接口地址,服务器用它选择地址池 |
| 前提 | 设备与服务器三层可达,且服务器上存在对应网段的池 |
| 核对命令 | 查看中继统计,确认请求与应答计数是否正常增长 |
典型使用场景
- 园区部署统一地址服务器,各网段由网关转发请求
- 分支机构通过专线向总部服务器申请地址
- 无线控制器网段由核心设备代为转发
- 服务器集中管理、避免每台设备各自维护地址池
- 迁移过程中把本地分配改为集中分配,需要同步配置中继
华为 VRP
华为 VRP
dhcp enable
interface Vlanif10
ip address 192.168.10.1 255.255.255.0
dhcp select relay # 该接口使用中继模式
dhcp relay server-ip 10.0.0.100 # 指向统一服务器
display dhcp relay statistics # 查看转发统计思科 IOS
思科 IOS
interface Vlan10
ip address 192.168.10.1 255.255.255.0
ip helper-address 10.0.0.100 # 一条命令完成中继
show running-config interface Vlan10H3C Comware
H3C Comware
dhcp enable
interface Vlan-interface10
ip address 192.168.10.1 255.255.255.0
dhcp select relay
dhcp relay server-select 1 # 引用服务器组
dhcp relay server-group 1 ip 10.0.0.100 # 需先建服务器组
display dhcp relay server-group all三厂中继配置对照
| 对比项 | 华为 VRP | 思科 IOS | H3C Comware |
|---|---|---|---|
| 命令条数 | 接口下两条命令 | 一条命令完成 | 需先建服务器组再引用 |
| 服务器地址写法 | dhcp relay server-ip 地址 | ip helper-address 地址 | 服务器组内配地址 |
| 转发字段 | 自动填入接口地址 | 自动填入接口地址 | 自动填入接口地址 |
| 转发范围 | 仅地址分配相关报文 | 还会转发其他类型的广播报文 | 仅地址分配相关报文 |
| 核对方式 | 查看中继转发统计 | 查看接口配置与服务器日志 | 查看服务器组与中继统计 |
配置与排障要点
- 服务器上必须有与转发字段同网段的地址池,否则请求能到但不会应答
- 转发字段由中继接口地址决定,接口地址变更后旧池立即失效
- 中继统计中的请求计数能区分两类根因:计数为零说明请求没到设备,计数增长但客户端拿不到地址说明服务器侧问题
- 多条上行链路时确保到服务器的路由可达,路径中断表现为间歇性拿不到地址
- 集中分配后本地不再需要地址池,但池配置若残留可能造成行为混乱,建议清理
常见疑问
- 为什么统计有计数但客户端拿不到地址:服务器上没有匹配的地址池,或者服务器侧策略拦截
- 能不能同时用本地池与中继:同一接口不建议混用,按规划统一为一种方式
- 服务器在另一个厂商设备上要注意什么:注意转发字段与池网段的匹配关系,与设备品牌无关
- 换网段要改什么:接口地址与服务器池两侧都要同步修改
中继的核心是转发字段:中继把收到请求的接口地址填进报文,服务器按这个地址挑选对应网段的地址池。理解这一点,就能解释为什么服务器有池却不应答。
三厂的中继统计都值得定期采集:请求与应答计数同时增长说明链路正常,只有请求没有应答是服务器侧问题,两个都为零则是客户端或链路侧问题。