【TCP/IP】ARP

ARP(地址解析协议)用于将IP地址转换为物理地址,如MAC或DLCI,以便在多路访问网络中进行数据交换。在以太网、多点帧中继和DMVPN中,ARP起到关键作用。ARP请求是广播,应答是单播。代理ARP允许设备代为响应不在同一广播域的请求,而免费ARP则用于检测IP冲突和更新缓存。ARP还存在欺骗风险,非法主机可通过发送错误ARP响应实施攻击。
摘要由CSDN通过智能技术生成

ARP:地址解析协议,根据IP地址获取物理地址

    在硬件层次上进行数据交换,必须知道目的端的硬件地址才能发送数据,ARP就是根据IP地址请求目的物理地址。

    在多路访问的网络ARP是非常重要的,但在点对点链路中可以不使用ARP。

    在多路访问的网络最经典的有以太网、多点帧中继、DMVPN的MGRE。在这种多路访问的网络里面,知道对方的逻辑IP地址是无法直接发送数据包的,需要一个协议来映射这个逻辑IP地址到硬件地址。比如:

    在以太网里面,有ARP映射IP地址到MAC;

    在多点帧中继网络里面,有反向ARP映射逻辑IP地址到DLCI;

    在DMVPN里面的MGRE网络,有NHRP来映射逻辑的隧道口的IP地址到全局可路由的IP地址

ARP帧的格式:

以太网目的地址:目的MAC地址

以太网源地址:源MAC地址

帧类型:值为0x0806  ARP

硬件类型:指硬件地址的类型,值为1表示以太网地址

协议类型:指要映射的协议地址类型,值为0x0800表示IP地址

硬件地址长度:MAC地址的长度,值为6

协议地址长度:IP地址的长度,值为4

Op:操作类型,1为ARP请求、2为ARP应答、3为RARP请求、4为RARP应答

发送端以太网地址:发送者的MAC地址

发送端IP地址:发送者的IP得知

目的以太网地址:接收者的以太网的MAC地址,请求为全0

目的IP地址:接收者的IP地址

ARP的请求是二层广播,回应是单播。

 

    如果一个no ip routing 的设备没有路由能力也不配置网关,访问任何地址都会直接做ARP请求,有路由能力的设备,只会对直连网络做ARP请求,非直连网络不会解析,会走路由。

    如果两个直连设备都是no ip routing 的设备,IP地址随便配,互相都可以ping通,比如:

R1:1.2.3.4  R2:6.7.8.9  可以ping通,原因就是因为:no ip routing的设备会直接做ARP请求。

代理ARP:对于没有配置缺省网关的计算机要和其它网络中的计算机实现通信,代理ARP的主机会将自己的AMC地址和目标的IP地址对源计算机进行应答。

代理ARP只响应那些在自己路由表里能找到的网段,解决不是在同一广播域间主机的通信。

    当把内部服务器发布在公网上时,做一对一NAT映射(IP,非端口),映射的还不是外网口的接口的IP地址(NAT地址池)时,必须在外网接口上开启代理ARP。否则,外部客户无法解析到内网服务器的MAC地址,客户发送的请求就会超时。

尽量不要使用代理ARP,有时候会造成网络不通,例如:TCP/IP路由卷一里面Jeff写的实验

免费ARP:指主机发送ARP查找自己的IP地址。告诉整个广播域,目前这个IP对应的MAC地址是什么。看看广播域内有没有别的主机使用自己的IP,如果有,则提示IP冲突。

    如果主机收到某个IP地址的ARP请求,而且它已经在接收者的高速缓存中,那么就要用ARP请求中的发送端硬件地址对高速缓存中相应的内容进行更新。

攻击:非法主机通过发送ARP回应报文,将网关的MAC地址发送给其它PC,刷新被攻击的主机的MAC,现实MAC地址欺骗。没有缓存也会学习。

非法主机通过发送免费ARP,将网关的MAC地址发送给其它PC,刷新被攻击的主机的MAC,实现MAC地址欺骗。但是免费ARP攻击,有种情况,被攻击的主机不会中招,那就是被攻击主机以前就没有网关的MAC地址缓存,所以不会刷新也不会学习。

 

    使用冷备时,需要使用到免费ARP。当一台设备A挂掉,手动开启另一台设备B,两台设备IP地址相同,MAC地址不同。由于下联PC端的缓存还在,IP地址映射的还是设备A,此时无法通信,当设备B向PC发送免费ARP时,PC会刷新ARP缓存,指向B,此时就可以通信了。如果没有免费ARP来刷新设备B的ARP缓存,就需要等PC相应的ARP缓存条目过期,然后PC端会重新向网络中发送ARP请求报文获取设备B的MAC地址,这个时间会很长。

 

    使用热备时,HSRP,两台路由器,一台ip地址是.1,MAC地址是A、一台IP地址是.2,MAC地址是B。工作时,首先它们先虚拟出一个ip地址是100和一个MAC地址是C。下面的PC会指.100为网关MAC映射为C,两个路由器谁是主用谁就会使用虚拟出来的IP地址和MAC地址,如果主用坏了备用会快速切换过来,也没有必要去发送免费ARP来刷新缓存了


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值