当前位置:   article > 正文

TCP/IP的网际层协议——ARP

TCP/IP的网际层协议——ARP

MAC地址对于每一台设备是全球唯一的,该地址被烧录在网卡的硬件电路上。MAC地址由12位十六进制数表示,其中前6位标识网卡的制造厂商,后6位是网卡的序列号。在以太网中,一个主机要和另一个主机进行通信,必须知道知道目标主机的的MAC地址。


 

什么是ARP,它用来将IP地址映射到MAC地址,以便设备能在多路访问介质上通信。可以举一个例子很好的说明ARP是如何工作的:老师要将一封信交给教室里的某个学生,但是老师
并不认识这个学生,她只知道这个学生的姓名(IP),于是她对教室里所有的人说:“谁是王XX,有你的信(网络数据)”,当王XX听到这个信息时(地址匹配),他站起来回答,然后老师就知道了他坐在几排几列(MAC地址),最后把信送到他的座位上。


ARP协议的实现中还有一些应该注意的事项:
每台计算机上都有一个 ARP 缓冲,它保存了一定数量的从 IP 地址到 MAC 地址的映射,同时当一个 ARP 广播到来时,虽然这个 ARP 广播可能与它无关,但 ARP 协议软件也会把其中的物理地址与 IP 地址的映射记录下来,这样做的好处是能够减少 ARP 报文在局域网上发送的次数。  按照缺省设置, ARP 高速缓冲中的项目是动态的, ARP 缓冲中 IP 地址与物理地址之间的映射并不是一旦生成就永久有效的,每一个 ARP 映射 都有自己的寿命,如果在一段时间内没有使用,那么这个 ARP 映射就会从缓冲中删除 ,这一点和交换机 MAC 地址表的原理一样的。这种老 化机制,可以大大减少 ARP 缓存表的长度,加快查询速度。
在以太网中,当主机要确定某个 IP 地址的 MAC 地址时,它会先检查自己的 ARP 缓冲区表,如果目标地址不包含在该缓冲表中,主机就会发送一个 ARP 请求 ( 广播形式 ) ,网段上的任何主机都可以接收到给广播但是只有目标主机才会响应此 ARP 请求。由于目标主机在收到 ARP 请求时可以学习到发送方的 IP 地址和 MAC 地址的映射,因此它采用一个单播消息回应请求。

主机A以广播形式发送ARP请求查询IP地址为192.168.1.3的主机的MAC地址,网段上所有的主机都会收到该ARP请求。

主机 B 、主机 D 收到主机 A 发送的 ARP 请求时,他们发现这个请求不是发给自己的,因此他们忽略这个请求但是他们还是将主机 A IP 地址和 MAC 地址的映射记录到自己的 ARP 表中。当主机 C 收到主机 A 发来的 ARP 请求时,它发现这个 ARP 请求是发给自己的,于是它用单播消息回应 ARP 请求, 同时记录下其 IP 地址和 MAC 地址的映射。
通常 ARP 协议都在支持广播的网络上使用,如以以太网。但是 ARP 数据包不能跨网段使用,也就是说不能跨越路由器 ( 路由器本身用作 ARP 代理除外 ) 。但目标网络 IP 地址和源 IP 地址不在统一网段上时,就要使用代理 ARP
IP 地址冲突的问题及解决方法:
 
ARP 产生的问题汇总最常见的是 IP 地址的冲突,这时由于两个不同的主机使用相同的 IP 地址而产生的,在任何互联网中, IP 地址必须是唯一的。
当接口初始化时,它发送一个含有其 IP 地址的 ARP 请求,如果收到回应, Windows 就会向用户报告这个 IP 地址已经被别人占用了;如果没有收到回应,它就认为 IP 地址没有被使用。最后说明一点:ARP是数据链路层的协议。

转载于:https://www.cnblogs.com/stemon/p/4717561.html

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/天景科技苑/article/detail/1021639
推荐阅读
相关标签
  

闽ICP备14008679号