19-DHCP Snooping配置
本章节下载: 19-DHCP Snooping配置 (208.45 KB)
目 录
1.1.2 DHCP Snooping支持Option 82功能
1.2.2 配置DHCP Snooping支持Option 82功能
1.3.2 配置DHCP Snooping支持Option 82功能
1.5.2 DHCP Snooping支持Option 82配置举例
设备只有位于DHCP客户端与DHCP服务器之间,或DHCP客户端与DHCP中继之间时,DHCP Snooping功能配置后才能正常工作;设备位于DHCP服务器与DHCP中继之间时,DHCP Snooping功能配置后不能正常工作。
DHCP Snooping是DHCP的一种安全特性,具有如下功能:
(1) 保证客户端从合法的服务器获取IP地址;
(2) 记录DHCP客户端IP地址与MAC地址的对应关系。
网络中如果存在私自架设的伪DHCP服务器,则可能导致DHCP客户端获取错误的IP地址和网络配置参数,无法正常通信。为了使DHCP客户端能通过合法的DHCP服务器获取IP地址,DHCP Snooping安全机制允许将端口设置为信任端口和不信任端口:
l 信任端口正常转发接收到的DHCP报文。
l 不信任端口接收到DHCP服务器响应的DHCP-ACK和DHCP-OFFER报文后,丢弃该报文。
连接DHCP服务器和其他DHCP Snooping设备的端口需要设置为信任端口,其他端口设置为不信任端口,从而保证DHCP客户端只能从合法的DHCP服务器获取IP地址,私自架设的伪DHCP服务器无法为DHCP客户端分配IP地址。
如图1-1所示,连接DHCP服务器的端口需要配置为信任端口,以便DHCP Snooping设备正常转发DHCP服务器的应答报文,保证DHCP客户端能够从合法的DHCP服务器获取IP地址。
DHCP Snooping通过监听DHCP-REQUEST和信任端口收到的DHCP-ACK广播报文,记录DHCP Snooping表项,其中包括客户端的MAC地址、获取到的IP地址、与DHCP客户端连接的端口及该端口所属的VLAN等信息。利用这些信息可以实现ARP Detection,ARP Detection根据DHCP Snooping表项来判断发送ARP报文的用户是否合法,从而防止非法用户的ARP攻击。ARP Detection的详细介绍请参见“ARP配置”。
Option 82记录了DHCP客户端的位置信息。管理员可以利用该选项定位DHCP客户端,实现对客户端的安全和计费等控制。
如果DHCP Snooping支持Option 82功能,则当设备接收到DHCP请求报文后,将根据报文中是否包含Option 82以及用户配置的处理策略及填充模式等对报文进行相应的处理,并将处理后的报文转发给DHCP服务器。具体的处理方式见表1-1。
当设备接收到DHCP服务器的响应报文时,如果报文中含有Option 82,则删除Option 82,并转发给DHCP客户端;如果报文中不含有Option 82,则直接转发。
表1-1 DHCP Snooping支持Option 82的处理方式
收到DHCP请求报文 |
处理策略 |
填充模式 |
DHCP Snooping对报文的处理 |
收到的报文中带有Option 82 |
Drop |
任意 |
丢弃报文 |
Keep |
任意 |
保持报文中的Option 82不变并进行转发 |
|
Replace |
normal |
采用normal模式填充Option 82,替换报文中原有的Option 82并进行转发 |
|
verbose |
采用verbose模式填充Option 82,替换报文中原有的Option 82并进行转发 |
||
用户自定义 |
采用用户自定义的内容填充Option 82,替换报文中原有的Option 82并进行转发 |
||
收到的报文中不带有Option 82 |
- |
normal |
采用normal模式填充Option 82并进行转发 |
verbose |
采用verbose模式填充Option 82并进行转发 |
||
用户自定义 |
采用用户自定义的内容填充Option 82并进行转发 |
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
使能DHCP Snooping功能 |
dhcp-snooping |
必选 缺省情况下,OLT的DHCP Snooping功能处于关闭状态 |
进入以太网端口或二层聚合端口视图 |
interface interface-type interface-number |
- |
配置端口为信任端口 |
dhcp-snooping trust [ no-user-binding ] |
必选 缺省情况下,在使能DHCP Snooping功能后,设备的所有端口均为不信任端口 |
l 为了使DHCP客户端能从合法的DHCP服务器获取IP地址,必须将与合法DHCP服务器相连的端口设置为信任端口,设置的信任端口和与DHCP客户端相连的端口必须在同一个VLAN内。
l 可以将以太网端口和二层聚合接口配置为DHCP Snooping的信任端口,关于聚合端口的详细介绍,请参见“链路聚合配置”。
l 以太网端口加入聚合组后,该端口上进行的DHCP Snooping配置不会生效;该端口退出聚合组后,之前的DHCP Snooping配置才会生效。
l 请不要将非信任的以太网端口加入聚合组。
l 建议不要在设备上同时配置DHCP Snooping功能和灵活QinQ功能,否则可能导致DHCP Snooping功能无法正常使用。
只有在使能DHCP Snooping功能后,DHCP Snooping支持Option 82功能的相关配置才会生效。
表1-3 配置DHCP Snooping支持Option 82功能
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入以太网端口或ONU端口视图 |
interface interface-type interface-number |
- |
|
配置DHCP Snooping支持Option 82功能 |
dhcp-snooping information enable |
必选 缺省情况下,DHCP Snooping不支持Option 82功能 |
|
配置DHCP Snooping对包含Option 82的请求报文的处理策略 |
dhcp-snooping information strategy { drop | keep | replace } |
可选 缺省情况下,处理策略为replace |
|
配置非用户自定义的Option 82 |
配置Option 82的填充模式 |
dhcp-snooping information format { normal | verbose [ node-identifier { mac | sysname | user-defined node-identifier } ] } |
可选 缺省情况下,Opiton 82的填充模式为normal 在ONU端口下,Opiton 82的填充模式只能为normal |
配置Circuit ID子选项的填充格式 |
dhcp-snooping information circuit-id format-type { ascii | hex } |
可选 缺省情况下,Circuit ID子选项的填充格式由Option 82的填充模式决定,每个字段的填充格式不同 配置的填充格式只对非用户自定义的填充内容有效 |
|
配置Remote ID子选项的填充格式 |
dhcp-snooping information remote-id format-type { ascii | hex } |
可选 缺省情况下,采用HEX格式填充Remote ID子选项 配置的填充格式只对非用户自定义的填充内容有效 |
|
配置用户自定义的Option 82 |
配置Circuit ID子选项的内容 |
dhcp-snooping information [ vlan vlan-id ] circuit-id string circuit-id |
可选 缺省情况下,Circuit ID子选项的内容由Option 82的填充模式决定 |
配置Remote ID子选项的内容 |
dhcp-snooping information [ vlan vlan-id ] remote-id string { remote-id | sysname } |
可选 缺省情况下,Remote ID子选项的内容由Option 82的填充模式决定 |
l 配置OLT支持Option 82功能时,只能在以太网端口或ONU端口上配置。
l 为使Option 82功能正常使用,需要在DHCP服务器和DHCP Snooping上都进行相应配置。
l DHCP Snooping对包含Option 82请求报文的处理策略为replace时,需要配置Option 82的填充格式;处理策略为keep或drop时,不需要配置Option 82的填充格式。
l 如果以节点的设备名称(sysname)作为节点标识填充DHCP报文的Option 82,则设备名称中不能包含空格;否则,DHCP Snooping将丢弃该报文。
OLT可通过扩展OAM报文远程配置ONU的DHCP Snooping功能。
开启了ONU的DHCP Snooping功能后,ONU上会生成一个DHCP Snooping表,用来记录下挂DHCP Client从DHCP Server获取的IP地址和用户MAC地址信息,每条记录为DHCP Snooping表中的一个表项。
表1-4 配置ONU的DHCP Snooping功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入ONU端口视图 |
interface interface-type interface-number |
- |
开启ONU的DHCP Snooping功能 |
onu-protocol dhcp-snooping enable |
必选 缺省情况下,ONU的DHCP Snooping功能处于关闭状态 |
开启了ONU的DHCP Snooping Option82后:
l 当该ONU下的DHCP Client发送请求报文到DHCP Server时,如果请求报文中已包含Option 82字段,则ONU将使用自身的Option 82字段替代报文中原有的Option 82字段,然后将请求报文继续进行广播;
l 如果请求报文中没有包含Option 82字段,则ONU将Option 82字段添加到报文中后再进行广播。
由该ONU广播发出的请求报文中包括了ONU的MAC地址、DHCP Client所连接的UNI号和该UNI所属的VLAN,实现了DHCP客户端位置信息在DHCP服务器上的记录。
表1-5 配置ONU的DHCP Snooping Option82
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入ONU端口视图 |
interface interface-type interface-number |
- |
开启ONU的DHCP Snooping Option82功能 |
onu-protocol dhcp-snooping information enable |
必选 缺省情况下,ONU的DHCP Snooping Option82功能处于关闭状态 |
表1-6 DHCP Snooping显示和维护
操作 |
命令 |
命令执行视图 |
显示DHCP Snooping记录的IP地址和MAC地址的绑定信息 |
display dhcp-snooping [ ip ip-address ] |
任意视图 |
显示DHCP Snooping上Option 82的配置信息 |
display dhcp-snooping information { all | interface interface-type interface-number } |
|
显示DHCP Snooping设备上的DHCP报文统计信息 |
display dhcp-snooping packet statistics |
|
显示信任端口信息 |
display dhcp-snooping trust |
|
显示ONU支持DHCP-Snooping Option 82的配置信息 |
display onu-protocol [ dhcp-snooping information ] |
ONU端口视图 只有ONU在线时才能正常显示 |
清除DHCP Snooping表项 |
reset dhcp-snooping { all | ip ip-address } |
用户视图 |
清除DHCP Snooping设备上的DHCP报文统计信息 |
reset dhcp-snooping packet statistics |
OLT设备通过以太网端口GigabitEthernet1/1/1连接到DHCP服务器,并通过端口OLT1/0/1和分光器下接两台ONU,每个ONU下连接一个DHCP客户端。要求:
l 与DHCP服务器相连的端口可以转发DHCP服务器的响应报文,而其他端口不转发DHCP服务器的响应报文。
l 记录DHCP-REQUEST和信任端口收到的DHCP-ACK广播报文中DHCP客户端IP地址及MAC地址的绑定关系。
图1-2 DHCP Snooping组网示意图
在进行配置前,请首先完成EPON OLT和ONU连接的基本配置,保证ONU设备可以正常注册,具体配置请参见“EPON系统配置”。
l 配置OLT
# 使能DHCP Snooping功能。
<Sysname> system-view
[Sysname] dhcp-snooping
# 配置GigabitEthernet1/1/1端口为信任端口。
[Sysname] interface GigabitEthernet 1/1/1
[Sysname-GigabitEthernet1/1/1] dhcp-snooping trust
[Sysname-GigabitEthernet1/1/1] quit
#显示DHCP Snooping记录的IP地址和MAC地址的绑定信息。
<Sysname>display dhcp-snooping
DHCP Snooping is enabled.
The client binding table for all untrusted ports.
Type : D--Dynamic , S--Static
Type IP Address MAC Address Lease VLAN Interface
==== =============== ============== ============ ==== =================
D 192.168.0.44 000d-56f5-759c 85480 1 Onu1/0/1:1
D 192.168.0.11 000f-34c5-2b22 85480 1 Onu1/0/1:2
--- 2 dhcp-snooping item(s) found ---
l 在OLT设备上使能DHCP Snooping功能,并支持Option 82功能;
l 对包含Option 82的请求报文的处理策略为replace;
l 在ONU端口1/0/1:1上配置Ciruict ID填充内容为company001,Remote ID填充内容为device001;
l 在ONU端口1/0/1:2上配置接入节点标识为sysname,填充格式为ASCII格式。
l OLT设备将添加Option 82的DHCP请求报文转发给DHCP服务器Switch A,使得DHCP客户端可以获取到IP地址。
如图1-2所示。
在进行配置前,请首先完成EPON OLT和ONU连接的基本配置,保证ONU设备可以正常注册,具体配置请参见“OLT配置”。
# 使能DHCP Snooping功能。
<Sysname> system-view
[Sysname] dhcp-snooping
# 在ONU端口1/0/1:1上配置DHCP Snooping支持Option 82功能。
[Sysname] interface onu 1/0/1:1
[Sysname-Onu1/0/1:1] dhcp-snooping information enable
[Sysname-Onu1/0/1:1] dhcp-snooping information strategy replace
[Sysname-Onu1/0/1:1] dhcp-snooping information circuit-id string company001
[Sysname-Onu1/0/1:1] dhcp-snooping information remote-id string device001
[Sysname-Onu1/0/1:1] quit
# 在ONU端口1/0/1:2配置DHCP Snooping支持Option 82功能。
[Sysname] interface onu 1/0/1:2
[Sysname-Onu1/0/1:2] dhcp-snooping information enable
[Sysname-Onu1/0/1:2] dhcp-snooping information strategy replace
[Sysname-Onu1/0/1:2] dhcp-snooping information format verbose node-identifier sysname
[Sysname-Onu1/0/1:2] dhcp-snooping information circuit-id format-type ascii
[Sysname-Onu1/0/1:2] dhcp-snooping information remote-id format-type ascii
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!