什么是代理ARP(proxy ARP)?

原创 2004年08月22日 02:31:00
Proxy ARP

yUmi#sh start
!
Written by yUmis(牛奶咖喱) a.k.a. 红头发
Description 欢迎转po,请保留作者信息
Homepage http://www.show-tym.com
Jun.27th.2004
!

什么是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,如下图:

此主题相关图片如下:
按此在新窗口浏览图片
注意如上图,源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.不能够概括和推广网络拓扑

一些参考资料:RFC 925和RFC 1027
Fin

linux 开启 proxy arp

What is proxy arp? When you turn on proxy arp for a network interface card (nic), then it will ...
  • wangdk789
  • wangdk789
  • 2014年07月08日 13:11
  • 1922

代理ARP的作用和原理

Proxy(代理)ARP作用及原理   代理ARP是ARP协议的一个变种。对于没有配置缺省网关的计算机要和其他网络中的计算机实现通信,网关收到源计算机的 ARP 请求会使用自己的 MAC 地址与目...
  • junjun222222
  • junjun222222
  • 2015年01月09日 15:07
  • 2411

linux下配置ARP代理服务器

在linux下配置arp代理服务器仅需要
  • Stpallas
  • Stpallas
  • 2014年06月09日 18:37
  • 2071

ARP代理(Proxy ARP)

ARP代理通俗地说,就是由中间设备代替其他主机响应arp请求。下图展现了ARP代理工作的主要过程: ARP代理工作过程示意图 ARP代理工作的过程说明 1,192.168...
  • ztsinghua
  • ztsinghua
  • 2016年03月07日 12:15
  • 4009

代理ARP配置要点及实例

  ARP配置要点 第一、连接好路由器与目的主机、路由器与源主机 第二、配置路由器与源主机、目的主机的ip地址 第三、一定保证目标主机的ip地址和源主机在同一个网段或则目标主机 的网络号...
  • u011390632
  • u011390632
  • 2015年01月04日 21:01
  • 1787

linux arp代理,DMZ与NAT

Linux系统缺省并没有打开IP转发功能,要确认IP转发功能的状态,可以查看/proc文件系统,使用下面命令: cat /proc/sys/net/ipv4/ip_forward 如果上述文件...
  • carltraveler
  • carltraveler
  • 2017年05月04日 11:17
  • 351

什么是代理ARP(proxy ARP)?

proxy ARP就是通过使用一个主机(通常为router),来作为指定的设备对另一设备作出ARP请求的应答     proxy ARP是如何工作的...
  • yiyangde7
  • yiyangde7
  • 2012年12月07日 09:08
  • 150

交换机ARP代理详解

交换机ARP代理详解图表The Host A (172.16.10.100) on Subnet A needs to send packets to Host D (172.16.20.200)...
  • mirkerson
  • mirkerson
  • 2010年09月21日 12:37
  • 4307

代理ARP你牛啥?

代理ARP你牛啥? 2010-01-21 04:30:27 标签:思科 ARP 路由交换 代理ARP   [推送到技术圈] 版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、...
  • mirkerson
  • mirkerson
  • 2010年09月21日 12:48
  • 2896

ARP、RARP、免费ARP、代理ARP

ARP协议: ARP是已知对方IP地址,请求对方MAC地址的一种地址解释协议,其工作原理如下: 1.在封装数据包时如果ARP缓存表中没有找到目标IP地址,主机A就会在本地网络上发送一个ARP广播,...
  • xitong2012
  • xitong2012
  • 2011年09月27日 14:05
  • 2076
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:什么是代理ARP(proxy ARP)?
举报原因:
原因补充:

(最多只允许输入30个字)