ROS软路由论坛 ROSABC.com 网络方案网络工程交流

 找回密码
 会员注册

QQ登录

只需一步,快速开始

DHCP资源耗尽案例及对

2014-8-26 00:17| 发布者: admin| 查看: 1602| 评论: 0

摘要:   DHCP是一个协议,这意味着来自IP电话等DHCP客户端的REQUEST消息可以被本网段中的所有设备看到,但是不会被转发到其他子网。如果DHCP服务器部署在其他网络,由器上必须DHCP转能。DHCP转发将消息为单播消息,并将 ...

  DHCP是一个协议,这意味着来自IP电话等DHCP客户端的REQUEST消息可以被本网段中的所有设备看到,但是不会被转发到其他子网。如果DHCP服务器部署在其他网络,由器上必须DHCP转能。DHCP转发将消息为单播消息,并将消息转发到配置的DHCP服务器。在大多数由器和3层交换机上都支持DHCP转能。

  DHCP资源耗尽案例研究

  我们配置了两台DHCP服务器,其中的一台是PC机上运行的LinuxRedHatFedoraCore4中自带的DHCP服务器,此PC机直接连接到子网的交换机上。另一台是Cisco2821由器上自带的DHCP服务。我们用AvayaCommunicationManagerIP电话来展示这类(也可以应用其他IP电话,因为这种并不是Avaya电话独有的)。

  我们对基于Linux的PCDHCP服务器上的dhcpd.conf文件进行配置,允许它最多分配两个IP地址。这些地址恰巧是到目前为止已经静态分配给AvayaH.323IP电话的IP地址。我们也修改dhcpd.conf文件,使DHCP服务器将会以针对AvayaIP电话的选项176信息来响应DHCPDISCOVER。DHCP选项176是一个私有的选项,换句话说,设备商可以提供只针对他们自有设备的信息。Avaya4602H.323IP电话需要下列特有的选项176信息:

  TFTP服务器的IP地址。

  呼叫服务器的端口。

  我们配置Cisco2821由器的DHCP服务器分配最多10个连续的IP地址,并且这些IP地址和基于Linux的PCDHCP服务器分配的两个地址不重叠。然而,我们没有配置CiscoDHCP来提供选项176信息。

  Avaya4602H.323IP电话在启动时发起DHCP请求操作的一个方法就是,清除静态分配给它的IP地址。我们断开每个电话的网线并重新插上网线,当电话启动到一定过程时,会提示用户(通过LCD)按键来允许通过键盘输入配置参数。我们按键并清除LCD上显示的所有参数,包括TFTP服务器IP地址、呼叫服务器(CommunicationManager)IP地址和端口、子网掩码、由器网关IP地址、VLAN信息,等等。保存新的参数值后电话继续启动过程。

  在启动后,H.323IP电话会在子网内一个DHCPDISCOVER消息。两个DHCP服务器都会用DHCPOFFER消息来响应。因为运行在Linux上的PCDHCP服务器提供了选项176信息,每个电话从运行在Linux上的PCDHCP服务器选择各自的OFFER消息,而不是从CiscoDHCP服务选择。每个电话完成各自的握手过程,并注册到AvayaCommunicationManager,这样呼叫就可以在他们之间以正常的方式进行了。

  我们拔掉IP电话,并让它的IP地址过期。为了方便测试,我们配置IP地址的有效期为2分钟。我们应用dhcpx进行了两次试验。每一次都达成了目标,换句话说,耗尽了所有OFFER消息中可用的IP地址,然而,每次试验中的表现都不同。dhcpx的命令行方式信息如下:

  我们应用的命令如下:

  怎样获取路由器地址第一次试验中,dhcpx如命令行所那样Linux的PCDHCP服务器,该服务器地址为10.1.14.110。dhcpx向DHCP服务器发送了大量DISCOVER消息来激活服务器的大量的OFFER消息。因为只有两个可用地址,因此都很快被DHCP服务器进行了分配。DISCOVER消息是向DHCP服务器(10.1.14.110)进行单播的,也就是,目标MAC地址为目标DHCP服务器的MAC地址。然而,目标IP地址为子网的地址255.255.255.255。这不会有影响,因为如果MAC地址不是子网地址255.255.255.255.255.255时,IP地址是不相关的。dhcpx工具在每个DISCOVER消息中应用随机的源MAC地址,DHCP服务器会对那些MAC地址做出响应。

  没有料到的是,dhcpx工具开始时发送DISCOVER消息,也就是MAC地址和IP地址都是子网地址。Cisco由器的DHCP服务器以OFFER消息来进行响应。dhcpx工具永远不会完成DORA(DiscoverOfferRequestAcknowledge)握手,而只是继续DISCOVER消息。因为服务器在一段时间内保留被分配的IP地址(如几秒或几分钟),这和dhcpx工具继续运行并接受OFFER消息在本质上有相同的影响。两个DHCP服务器能够分配的IP地址很快被耗尽了。我们停止运行dhcpx工具并让两个DHCP服务器上的OFFER消息过期,这样它们将会有IP地址可以分配。整个过程中,H.323电话一直没有接入到网络中。

  在第二次试验中,dhcpx通过命令行中的-D选项将目标只限定为目标DHCP服务器,它同样也能搞定每个分配的IP。浏览一下dhcpx的源码,这种能力就是我们在第一次试验中所要的。此时,我们将每个电话的混合的以太网/电源连接器插入到电话上,电话会启动并DISCOVER消息。Linux主机的DHCP服务器不会响应DISCOVER消息,因为它没有IP地址可以分配。Cisco由器上的DHCP服务器以OFFER消息进行响应。这些OFFER消息被电话接受,但是很快又被。记住,CiscoDHCP服务器没有配置为提供选项176包括Avaya特定信息的功能。这些电话最后进入了一个DISCOVER循环,每一个电话不停DISCOVER消息,接受CiscoDHCP分配的IP地址并很快这些地址。这些电话也会在LCD上滚动这些消息并告警L2Q(Layer2Quality)参数冲突和循环状态。不管怎样,电话服务实实在在地被了。

  我们停止dhcpx工具的。因为我们配置基于Linux的PCDHCP服务器的IP地址每2分钟过期一次,被dhcpx占用的两个IP地址很快就可以被DHCP再分配,换句话说,DHCP服务器很快可以响应来自电话的DISCOVER消息。其中的一个Avaya电话(最新H.323模块的那个-R2.3)很快从LinuxDHCP服务器接收一个OFFER消息。它接受了此OFFER消息并在AvayaCommunicationManager上进行注册。装有较老模块(R.182)的H.323电话依然处于DISCOVER循环中,我们对此模块所发生的事情并不知情。我们将此电话从网络上拔下并又接入到网络中。在启动过程的第一个DISCOVER周期中,它接收到并接受了来自LinuxDHCP服务器的OFFER消息,于是它注册到AvayaCommunicationManager上并能够以正常模式进行呼叫。这些电话每隔70秒钟会向LinuxDHCP服务器重续他们的IP地址。

  几次之后,我们发现R1.82电话在LCD上显示:

  或许在此版本的电话上,DHCP功能实现存在漏洞。我们将此电话从网络上拔下并又接入到网络中。它启动后,获取IP地址并能在一段不确定的时间内正常运行。DHCP服务器通常配置为几天过期。在R1.82H.323模块中的漏洞或许会在租约时间远小于通常配置的时间时触发。

  在如今这个信息爆炸的时代里,每天都会有数不清的新闻通过各种渠道涌到我们面前,而真正有价值的应该进入我们心里的,却很可能随着日历牌的翻动被我们忽略。作为对一周新闻进行回顾的《比特网新闻中心每周热点推荐》,就是要告诉您过去的七天都发生了哪些新闻,更希望和您一起,站在七天的高度来看待过去一周的新闻。

  领IT群雄秀企业风采。创刊于2008年2月,定位于行业(企业)信息化规划、建设、管理的中高层人士,通过精心的内容筛选,将每月发生的重点事件进行回顾,为高端人群提供深度阅读,与比特网内容的速度特性形成互补。主要栏目有:比特网精粹、新产品新技术、CIO、封面报道、下午茶精选等。

  业内首个只为报道数据中心资讯内容的专业频道,是为数据中心用户及厂商而建设的专业平台。以数据中心专业技术内容为核心,贯穿新鲜资讯、技巧方法和用户案例等高附加值内容。以为网友提供最具实用价值的信息为原则,以成为用户最信赖的行业专家为目标,打造高时效、高品质、高前瞻的最全威频道。企业数据中心热点播报,为您精心奉上过去一周数据中心最精彩、权威资讯_chinabyte比特网。

  就服务器和数据中心领域的产业动态、技术热点、热门产品、实用技巧,向企业CIO/CTO、IT管理层、技术人员提供一周精选套餐,为数据中心决策者、使用者提供一份服务器行业以及数据中心领域最新动态及产品应用的技术套餐。

不良信息举报Q:2000617

软路由

不良信息举报Q:2000617|Archiver|ROS软路由论坛 ROSABC.com 网络方案网络工程交流

GMT+8, 2024-4-23 17:06 , Processed in 0.325350 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部