ARP代理(Proxy ARP)

作者:易隐者 发布于:2012-9-16 9:33 Sunday 分类:网络分析

      ARP代理通俗地说,就是由中间设备代替其他主机响应arp请求。下图展现了ARP代理工作的主要过程:

点击查看原图

ARP代理工作过程示意图

ARP代理工作的过程说明

1,192.168.0.16/16主机向外发送目的主机为192.168.1.3/24的ARP请求报文;
2,网关收到0.16的ARP请求报文,由于网关开启了ARP代理的功能,因此网关代替1.3向0.16发送ARP响应数据报;
3,网关向1.0/24网段发送1.3的ARP请求报文;
4,1.3收到后,发送ARP响应报文。

ARP代理带来的问题

       在开启ARP代理功能之后,很可能会导致地址冲突等类似故障的产生,如在下图的网络环境下,将会产生一系列的不稳定的故障现象产生。 

点击查看原图

       正因为如此,我们在实际工作的环境中对于ARP代理功能的应用需要慎重一些,尽量避免针对整个网段使用ARP代理功能,最好只针对需要使用ARP代理功能来实现某些特殊功能需求的少数IP开启。

ARP代理在实际工作中的应用

1,AnyIP

       AnyIP是指机器随便使用什么IP地址或网关信息,只要接入网络中都可以实现访问的需求。这个技术被广泛的应用在soho级网关产品中,特别是在宾馆、会议室、广场等公共场所,为网络使用者提供了很大的便利。
其工作原理就是利用了ARP代理的功能,在收到非本地IP地址的ARP请求报文时,对其进行ARP响应。这样,那些收到ARP响应的主机就会将相关的数据包发送至网关设备接口处,再由网关设备转发出去,从而实现了上网的功能。

2,网关地址映射

       在很多网关设备上,都支持将内网的服务器映射为公网地址对外提供服务,以达到隐藏内部网络的目的,这种地址映射也是利用ARP代理技术来实现的,我们来简单看一下下图所示的地址映射的工作过程: 

点击查看原图

 地址映射的工作过程

       在这个过程中,当来自互联网的数据访问产生了对映射外网地址202.102.X.2的ARP请求报文,正常情况下,因为这个地址的真实主机并不存在,发送端是不会收到来自202.102.X.2的ARP响应报文的。但是,由于网关上启用了针对202.102.X.2的ARP代理功能,网关会替代202.102.X.2发送ARP响应报文。从而实现了地址映射访问的需求。

标签: ARP ARP代理 代理ARP AnyIP Proxy ARP 地址映射


您对本文的评分:
当前平均分: 8.4(33 次打分)

版权所有:《蚂蚁网-多维人生,三实而立!》 => 《ARP代理(Proxy ARP)
本文地址:http://www.vants.org/?post=119
除非注明,文章均为 《蚂蚁网-多维人生,三实而立!》 原创,欢迎转载!转载请注明本文地址,谢谢。

评论:

Xin
2019-03-11 06:01
这个网关地址映射那块,假如防火墙出口就是202.102.X.2的话,远端请求也是到X.2地址,那么就不会触发ARP代理,而是直接回复。但如果是映射为X.3的话,因为是X,2无法直接回复,触发ARP代理然后再进行NAT转换,这样是不是才对。多出现于运营商分配一个段的地址给企业,但企业映射非接口地址这个情况 ?
ss
2018-05-15 08:39
ARP代理带来的问题
博主好,关于文中“ARP代理带来的问题”这里PC请求1.1的MAC,路由器在开启ARP代理后会发送1.1的回应吗,我做实现不成功?请教??
todayzhou
2015-11-12 17:59
提出一些疑问:
1、anyip中的随便用什么ip都可以访问网络,如果主机配置的静态的ip比如1.1.1.1,网关是1.1.1.254,请求公网时会先arp1.1.1.254的mac地址,网络中的网关设备收到了请求后,如果就他而言1.1.1.254不可达的话,应该不会代理给回arp的吧。我印象中代理回arp的前提条件是网关设备能到目的地址才行呀。
望博主解答,非常感谢!
wwenyunkui
2013-09-24 17:46
anyIP的介绍有些少,不够明白

发表评论:

Powered by 易隐者 基于emlog 皖ICP备12002343号-1