dhcp-snooping选项82会在2610系列Procurve交换机上丢弃有效的DHCP请求

我们正在慢慢开始在我们的HP ProCurve 2610系列交换机上执行dhcp-snooping,所有交换机均运行R.11.72固件。 我看到一些奇怪的行为,当由于来自客户端的不可信的中继信息而从“下游”交换机发起时,dhcp-request或者dhcp-renew数据包被丢弃。

完整的错误:

Received untrusted relay information from client <mac-address> on port <port-number>

更详细的说,我们有一个48端口的HP2610(交换机A)和一个24端口的HP2610(交换机B)。 交换机B通过与交换机A端口之一的DSL连接而位于交换机A的“下游”。 DHCP服务器连接到交换机A.相关位如下:

开关A

 dhcp-snooping dhcp-snooping authorized-server 192.168.0.254 dhcp-snooping vlan 1 168 interface 25 name "Server" dhcp-snooping trust exit 

交换机B

 dhcp-snooping dhcp-snooping authorized-server 192.168.0.254 dhcp-snooping vlan 1 interface Trk1 dhcp-snooping trust exit 

交换机设置为信任授权的DHCP服务器所连接的端口及其IP地址。 这对于连接到Switch A的客户端来说都是好的,但由于“不可信的中继信息”错误,连接到Switch B的客户端将被拒绝。 这很奇怪,原因如下:1)在任一交换机上都没有configurationdhcp-relay,2)这里的三层networking是平坦的,同一个子网。 DHCP数据包不应具有修改的选项82属性。

dhcp-relay似乎默认启用,但是:

 SWITCH A# show dhcp-relay DHCP Relay Agent : Enabled Option 82 : Disabled Response validation : Disabled Option 82 handle policy : append Remote ID : mac Client Requests Server Responses Valid Dropped Valid Dropped ---------- ---------- ---------- ---------- 0 0 0 0 SWITCH B# show dhcp-relay DHCP Relay Agent : Enabled Option 82 : Disabled Response validation : Disabled Option 82 handle policy : append Remote ID : mac Client Requests Server Responses Valid Dropped Valid Dropped ---------- ---------- ---------- ---------- 40156 0 0 0 

有趣的是,DHCP中继代理似乎在Switch B上非常繁忙,但是为什么呢? 据我所知,没有理由为什么DHCP请求需要这种拓扑的中继。 此外,我不能说为什么当有问题的中继代理(在交换机B上)没有修改选项82属性时,为什么上游交换机正在丢弃合法的不可信中继信息的DHCP请求。

在Switch A上增加no dhcp-snooping option 82 ,只需closures该function,即可使Switch B的DHCPstream量得到Switch A的批准。 什么是validation选项82修改后的DHCPstream量的影响? 如果我禁用所有“上游”交换机上的选项82,它们是否会通过任何下游交换机的dhcpstream量,而不pipestream量的合法性如何?

这种行为是客户端操作系统不可知的。 我可以在Windows和Linux客户端上看到它。 我们的DHCP服务器是Windows Server 2003或Windows Server 2008 R2机器。 无论DHCP服务器的操作系统如何,我都会看到这种行为。

任何人都可以点亮这里发生的事情,并给我一些关于如何进行configuration选项82设置的build议? 我觉得我只是没有完全grohked dhcp中继和选项82属性。

你说,“DHCP中继没有启用”…但显然这是基于您的show dhcp-relay输出。

尝试明确禁用它; 基于上述意见,我怀疑你的问题将消失:)

实际上,交换机A上的数据包因为在非信任的端口上收到带有option82的DHCP客户端数据包而下降。 这个选项-82被switchB插入。

我认为下面应该工作 –

在,SwitchB – 禁用选项82,以便这不会插入这些选项。 将接口-25标记为信任以允许DHCP服务器数据包向下stream动。

在,SwitchA-你可以保持选项-82在这里启用/禁用。 这应该不重要。 将连接到switchB的端口标记为不可信。 将连接到DHCP服务器的端口标记为可信。

我想你可能会误解一个信任端口的想法。 我同意只相信提供的端口是直观的,但我的理解是,您也需要信任交换机A上的中继端口。 您将可信任的端口标记为连接到您了解和信任的设备。 仅仅因为你把交换机A上的Trunk标记为“信任”并不意味着你将允许在交换机B上存在一个非法的DHCP服务器。如果设置正确,交换机B不信任任何其他的中继线端口,所以你仍然阻止恶意DHCP服务器坐在交换机B上,并向交换机A上的客户机发送报价。

简而言之,您应该信任连接到您自己的DHCP服务器的端口以及连接到您pipe理的其他交换机的端口(这样可以确保没有其他可信端口)。