什么是proxy ARP? ARP代理

来源:本站原创 CISCO 超过887 views围观 0条评论

在MS系统中设置网关的效果:
1.不设网关………………………….不向本网段以外的地址发包
2.网关设为自己…………………….proxy arp, 对任何地址发ARP请求,路由器响应
3.网关设为路由器地址…………….普通模式,PC ARP解释路由器地址,然后跨网段数据包交路由器转发
4.网关设为未使用的本网段地址….普通模式,PC ARP解释路由器地址,失败,无法跨网段访问
5.网关设为非本网段地址………….proxy arp, 对任何地址发ARP请求,路由器响应

什么是proxy ARP?  proxy ARP就是通过使用一个主机(通常为router),来作为指定的设备对另一设备的ARP请求作出应答。proxy ARP是如何工作的?  设备需求:

  Cisco 2500系列的rourer

  Cisco IOS Release 12.2(10b)

  此主题相关图片如下:

  假设在如上图的一个环境中,位于子网A的主机A(172.16.10.100)需要发送packet到位于子网B的主机D(172.16.20.200)上去.于是主机A将发送ARP请求给D.当然,为了能够达到主机D,就需要知道主机D的MAC地址.因此,主机A在它位于的那个子网A上广播ARP请求。

  当然router的e0口也接收到该广播,但是router默认不会转发广播的,所以该ARP请求仍然到达不了主机D.但是router却知道主机D位于另外一个子网B.于是router应答自己的MAC地址给主机A,在应答的ARP报文中源IP地址为主机D的IP地址,但是源MAC地址是router e0口的MAC地址.这就是发送给主机A的proxy ARP应答(代理人,中间人).这样的proxy ARP应答一般是作为unicast发送给请求者(主机A)

  主机A收到这个proxy ARP应答以后,开始更新自己的ARP table。

  于是从现在开始,主机A将要前往主机D的packet通过router e0口(00-00-0c-94-36-ab)转发,因为router知道如何到达主机D,它会把packet转发给主机D

  另外,位于子网A的主机的ARP cache,如下图:

  此主题相关图片如下:

  注意上图,3个IP地址映射到1个MAC地址(router e0口的MAC地址)上,这就说明正在使用proxy ARP

  Cisco的router的接口应该配置成能够接收和应答proxy ARP,当然这个默认是启用的,不过可以使用一些命令来关闭这个功能,命令如下:

  Router# config t

  Enter configuration commands, one per line. End with CNTL/Z.

  Router(config)#int e 0

  Router(config-if)#no ip proxy-arp

  Router(config-if)#^Z

  Router#

  要再次启用的话,在接口配置模式下使用ip proxy-arp命令即可proxy ARP有哪些优点?  最主要的一个优点就是能够在不影响其他router的路由表的情况下在网络上添加一个新的router,这样使得子网的变化对主机是透明的

  proxy ARP应该使用在主机没有配置默认网关或没有任何路由策略的网络上proxy ARP带来的哪些负面影响?  1.增加了某一网段上ARP流量

  2.主机需要更大的ARP table来处理IP地址到MAC地址的映射

  3.安全问题,比如ARP欺骗(spoofing)

  4.不会为不使用ARP来解析地址的网络工作

  5.不能够概括和推广网络拓扑

文章出自:CCIE那点事 http://www.jdccie.com/ 版权所有。本站文章除注明出处外,皆为作者原创文章,可自由引用,但请注明来源。 禁止全文转载。
本文链接:http://www.jdccie.com/?p=261转载请注明转自CCIE那点事
如果喜欢:点此订阅本站
  • 相关文章
  • 为您推荐
  • 各种观点

暂时还木有人评论,坐等沙发!
发表评论

您必须 [ 登录 ] 才能发表留言!