思科设备DHCP服务器option 82选项与DHCP中继代理的问题 

 实验目的:

  1.无中继代理时,DHCP向客户端发送地址段和接收接口地址相同的网段,如果不存在相同网段,就会丢弃请求数据包.

  2.有中继代理时,服务器能够发送正确IP地址给客户端,是因为有一个被称为option 82的选项,这个选项只要DHCP请求数据包被中继后便会自动添加,此选项,中继路由器会在里面的giaddr位置写上参数,这个参数,就是告诉服务器,客户端需要哪个网段的IP地址才能正常工作。

实验设备:思科路由器

  说明:无中继代理非常简单在这里不给出,此文章吃给出有中继代理的情况。

  实验拓扑:

  

 思科设备DHCP服务器option 82选项与DHCP中继代理的问题_中继代理

 




  配置非常简单只给出R2和R4的部分配置:

  -------------------------------R2---------------------------------------------------

  interface FastEthernet0/0

  ip address 12.1.1.2 255.255.255.0

  ip helper-address 34.1.1.4

  ------------------------------R4---------------------------------------------------

  ip dhcp excluded-address 12.1.1.2

  ip dhcp excluded-address 10.1.1.1

  !

  ip dhcp pool ccie1

  network 12.1.1.0 255.255.255.0

  default-router 12.1.1.2

  !

  ip dhcp pool ccie2

  network 100.1.1.0 255.255.255.0

  default-router 100.1.1.1

  分析:

  先看R1的F0/0 发出的DHCP数据包:

  

 思科设备DHCP服务器option 82选项与DHCP中继代理的问题_中继代理_02

 




  从上图可以看出 relay agent ip address 没有设置。

  在看从R2发出的dhcp数据包:

  

 思科设备DHCP服务器option 82选项与DHCP中继代理的问题_option_03

 




  从上图可以看出relay agent ip address 已经设置成R2的F0/0 端口的IP,也就是收到R1dhcp请求的接口的IP .此数据包通过R3到底R4以后,R4通过查看relay agent ip address 的IP 和DHCP地址池,发现ccie1符合(12.1.1.0、24),就给R1分配了IP 的,假如没有符合的就丢弃这个数据包。

  需要知道的是,经过中继后发来的DHCP请求包如果giaddr位置不是某个IP地址而是0.0.0.0的话,服务器是丢弃该请求而不提供IP地址的。

  当服务器上存在12.1.1.0/24网段的地址池时,服务器要将该地址池发送给客户,就必须存在到达12.1.1.0网段的路由(默认路由也行),并且客户端必须位于该路由的方向,如果方向不对,该地址池也是不能够发给客户使用的。

 

文章转载来源:思科网络技术社区 http://www.sikejishu.com