华为eNSP模拟器综合实验之- DHCP Option 82 解析
Option82称为中继代理信息选项记录了DHCP Client的位置信息。
·
一、DHCP Option82概述
1.1 基本概念
Option82(DHCP Relay Agent Information Option)称为中继代理信息选项,记录了DHCP Client的位置信息。
1.2 核心作用
Option82的主要作用:
- 设备通过在DHCP请求报文中添加Option82选项,将DHCP Client的位置信息发送给DHCP Server
- 使DHCP Server能够根据Option82选项的内容为DHCP Client分配合适的IP地址和其他配置信息
- 实现对客户端的安全控制
1.3 配置位置要求
DHCP Option82必须配置在设备的用户侧,否则设备向DHCP Server发出的DHCP报文不会携带Option82选项内容。
二、Option82配置命令解析
2.1 Option82核心命令配置:
A. Option82命令
[Huawei]dhcp option82
|-- format # 设置Option 82封装格式
|-- circuit-id # 配置Circuit ID子选项
|-- remote-id # 配置Remote ID子选项
|-- vendor-specific # 配置厂商特定子选项
B. Option82格式配置命令
[Huawei]dhcp option82 format ?
common Common format. Circuit-ID:"%iftype
%slot/%subslot/%port:%svlan.%cvlan %sysname/0/0/0/0/0".
Remote-ID: "%mac"
default Default format. Circuit-ID:"%portname:%svlan.%cvlan
%sysname/0/0/0/0/0". Remote-ID: "%mac"
extend Extend format. Circuit-ID: 0 %length %svlan %5slot %3subslot
%8port. Remote-ID: 0 %length %mac
user-defined The format of DHCP option82 defined by user
[Huawei]dhcp option82 ?
circuit-id DHCP option82 sub-option Circuit ID #用于标识客户端所连接的电路(如端口、VLAN等)。
format The format of DHCP option82 #用于设置Circuit ID和Remote ID的封装格式。有四种格式:common, default, extend, user-defined。
remote-id DHCP option82 sub-option Remote ID #Remote ID用于标识DHCP中继设备本身,通常使用设备的MAC地址或其他标识。
vendor-specific The vendor-specific sub-option #这个子选项允许设备插入厂商自定义的信息,格式为十六进制字符串。
2.2 Option82格式配置命令详解
命令格式(系统视图/三层以太网接口视图)
dhcp option82 [ circuit-id | remote-id ] format { default | common | extend | user-defined text }
参数说明:
| 参数 | 说明 |
|---|---|
circuit-id |
指定配置Option82的circuit-id(CID)子选项 |
remote-id |
指定配置Option82的remote-id(RID)子选项 |
default |
默认格式 |
common |
通用格式 |
extend |
扩展格式 |
user-defined text |
用户自定义格式 |
缺省情况: DHCP报文中添加的Option82选项的格式为default
DHCP Option82 选项记录了DHCP Client的位置信息。设备通过在DHCP请求报文中添加Option82选项,可将DHCP Client的位置信息发送给DHCP Server,从而实现:
- 为DHCP Client分配合适的IP地址和配置信息
- 对客户端进行安全控制
- 精确识别用户物理位置
三、 Insert 和 Rebuild 详细区别
3.1Insert 模式(插入模式)
处理逻辑:
- 当设备收到DHCP请求报文时:
- 若报文中没有Option82选项 → 插入Option82选项
- 若报文中已含有Option82选项 → 判断Option82选项中是否包含remote-id
- 如果包含 → 保留原有Option82,不做修改
- 如果不包含 → 补充插入必要的信息
适用场景:
- 保护客户端或上游设备已有的Option82信息
- 仅在缺少Option82时才添加
- 适合多层网络环境,避免覆盖上游设备添加的信息
3.2Rebuild 模式(重建模式)
处理逻辑:
- 当设备收到DHCP请求报文时:
- 无论报文是否已有Option82选项 → 强制重新构建/覆盖Option82选项
- 直接插入设备生成的Option82信息,覆盖原有内容
适用场景:
- 需要完全控制Option82内容的场景
- 防止客户端伪造Option82信息
- 安全要求较高的网络环境
- 作为接入层设备,需要精确标识用户位置
| 场景 | 推荐模式 | 理由 |
|---|---|---|
| 接入层交换机 | Rebuild | 精确标识用户位置,防止伪造 |
| 汇聚层交换机 | Insert | 保留接入层添加的信息 |
| 安全要求高 | Rebuild | 强制控制Option82内容 |
| 多厂商环境 | Insert | 兼容上游设备的Option82 |
四、完整实战配置案例
案例1:基础Option82配置(二层网络)
网络拓扑:
PC → 接入交换机(S5700) → 核心交换机 → DHCP服务器
# 1. 进入系统视图
system-view
[Huawei]
# 2. 全局使能DHCP功能
[Huawei] dhcp enable
# 3. 全局使能DHCP Snooping功能(二层网络必需)
[Huawei] dhcp snooping enable
# 4. 创建VLAN 10
[Huawei] vlan 10
[Huawei-vlan10]
# 5. 在VLAN视图下使能DHCP Snooping
[Huawei-vlan10] dhcp snooping enable
# 8. 配置用户接入端口
[Huawei] interface GigabitEthernet0/0/1
[Huawei-GigabitEthernet0/0/1] port link-type access
[Huawei-GigabitEthernet0/0/1] port default vlan 10
[Huawei-GigabitEthernet0/0/1] quit
# 6. 配置Option82
[Huawei-vlan10] dhcp option82 insert enable interface GigabitEthernet 0/0/1
# 7. 配置上联端口为信任端口
[Huawei-vlan10] quit
[Huawei] interface GigabitEthernet0/0/24
[Huawei-GigabitEthernet0/0/24] dhcp snooping trusted
[Huawei-GigabitEthernet0/0/24] quit
# 9. 验证配置
[Huawei] display dhcp option82 configuration vlan 10
[Huawei] display dhcp snooping configuration vlan 10
案例2:Rebuild模式配置(强制插入)
应用场景: 需要确保所有DHCP报文都包含设备生成的Option82信息
system-view
[Huawei] dhcp enable
[Huawei] dhcp snooping enable
# 配置VLAN 20
[Huawei] vlan 20
[Huawei-vlan20] dhcp snooping enable
# 配置用户端口
[Huawei] interface range GigabitEthernet0/0/1 to 0/0/10
[Huawei-if-range] port link-type access
[Huawei-if-range] port default vlan 20
[Huawei-if-range] quit
# 使用Rebuild模式(强制插入)
[Huawei-vlan20] dhcp option82 rebuild enable interface GigabitEthernet0/0/1 to 0/0/10
# 配置信任端口
[Huawei-vlan20] quit
[Huawei] interface GigabitEthernet0/0/24
[Huawei-GigabitEthernet0/0/24] dhcp snooping trusted
[Huawei-GigabitEthernet0/0/24] quit
# 验证配置
[Huawei] display dhcp option82 configuration vlan 20
五、命令行汇总
5.1 系统视图/三层以太网接口视图下的Option82命令
dhcp option82 format
| 格式类型 | Circuit-ID格式 | Remote-ID格式 | 封装方式 | 适用场景 |
|---|---|---|---|---|
| default (默认) | %portname:%svlan.%cvlan %sysname/0/0/0/0/0示例: GigabitEthernet0/0/1:10.20 Huawei-SW/0/0/0/0/0 |
%mac示例: 00e0-fc12-3456 |
ASCII | 通用场景,兼容性最好 |
| common (通用) | %iftype %slot/%subslot/%port:%svlan.%cvlan %sysname/0/0/0/0/0示例: eth 0/0/1:10.20 Huawei-SW/0/0/0/0/0 |
%mac示例: 00e0-fc12-3456 |
ASCII | 多厂商设备通用格式 |
| extend (扩展) | 0 %length %svlan %5slot %3subslot %8port示例: 0x00 0x0A 0x000A 0x00000 0x000 0x00000001 |
0 %length %mac示例: 0x00 0x06 0x00e0fc123456 |
HEX | 高级定制,精确控制 |
| user-defined (自定义) | 用户自定义格式 | 用户自定义格式 | 可自定义 | 特殊需求场景 |
dhcp option82 [ circuit-id | remote-id ] format { default | common | extend | user-defined text }
undo dhcp option82 format
功能: 配置在DHCP报文中添加的Option82选项的格式
缺省: default
参数:
circuit-id: 配置Option82的circuit-id子选项remote-id: 配置Option82的remote-id子选项default: 默认格式common: 通用格式extend: 扩展格式user-defined text: 用户自定义格式
5.2 查看命令
display dhcp option82 configuration
display dhcp option82 configuration [interface { interface-type interface-number | interface-name } | vlan vlan-id]
功能: 查看Option82的配置信息
示例输出:
[Huawei] display dhcp option82 configuration vlan 10
DHCP Option82 Configuration:
VLAN ID: 10
Option82 Insert: Enable
Option82 Rebuild: Disable
Loop Detect: Disable
六、注意事项及建议
-
配置位置要求:
- DHCP Option82必须配置在设备的用户侧(接入侧)
- 否则设备向DHCP Server发出的DHCP报文不会携带Option82选项内容
-
覆盖关系:
- 在同一接口下同时配置
insert和rebuild命令,后配置的命令生效 - 建议避免在同一接口同时配置两种模式
- 在同一接口下同时配置
-
长度限制:
- 所有Option82选项共用1~255个字节长度
- 所有Option82选项长度之和不能超过255字节,否则会导致部分信息丢失
-
生效范围:
- VLAN视图配置:对设备所有接口接收到的属于该VLAN的DHCP报文生效
- 接口视图配置:仅对该接口接收到的DHCP报文生效
更多推荐
所有评论(0)