http://hi.baidu.com/zhao3/item/6b53882e0d8e540c72863ead
ARP 地址解析协议原理及应用一、什么是ARP 协议
ARP 协议是“Address Resolution Protocol”(地址解析协议)的缩写。在局域网中,网络中实际传输的是“帧”,
帧里面是有目标主机的MAC 地址的。在以太网中,一个主机要和另一个主机进行直接通信,必须要知道
目标主机的MAC 地址。但这个目标MAC 地址是如何获得的呢?它就是通过地址解析协议获得的。所谓“地
址解析”就是主机在发送帧前将目标IP 地址转换成目标MAC 地址的过程。ARP 协议的基本功能就是通过
目标设备的IP 地址,查询目标设备的MAC 地址,以保证通信的顺利进行。
二、ARP 协议的工作原理
在每台安装有TCP/IP 协议的电脑里都有一个ARP 缓存表,表里的IP 地址与MAC 地址是一一对应的,如
附表所示。
附表
ip 地址mac 地址
192.168.1.100-aa-00-62-c6-09
192.168.1.200-aa-00-62-c5-03
192.168.1.303-aa-01-75-c3-06
…… ……
我们以主机A(192.168.1.5)向主机B(192.168.1.1)发送数据为例。当发送数据时,主机A 会在自己的
ARP 缓存表中寻找是否有目标IP 地址。如果找到了,也就知道了目标MAC 地址,直接把目标MAC 地址
写入帧里面发送就可以了;如果在ARP 缓存表中没有找到相对应的IP 地址,主机A 就会在网络上发送一
个广播,目标MAC 地址是“FF.FF.FF.FF.FF.FF”,这表示向同一网段内的所有主机发出这样的询问:
“192.168.1.1 的MAC 地址是什么?”网络上其他主机并不响应ARP 询问,只有主机B 接收到这个帧时,才
向主机A 做出这样的回应:“192.168.1.1 的MAC 地址是00-aa-00-62-c6-09”。这样,主机A 就知道了主
机B 的MAC 地址,它就可以向主机B 发送信息了。同时它还更新了自己的ARP 缓存表,下次再向主机B
发送信息时,直接从ARP 缓存表里查找就可以了。ARP 缓存表采用了老化机制,在一段时间内如果表中
的某一行没有使用,就会被删除,这样可以大大减少ARP 缓存表的长度,加快查询速度。
三、如何查看ARP 缓存表
ARP 缓存表是可以查看的,也可以添加和修改。在命令提示符下,输入“arp -a”就可以查看ARP 缓存表中
的内容了。
用“arp -d”命令可以删除ARP 表中某一行的内容;用“arp -s”可以手动在ARP 表中指定IP 地址与MAC 地
址的对应。
ARP 协议是“Address Resolution Protocol”(地址解析协议)的缩写。在局域网中,网络中实际传输的是“帧”,
帧里面是有目标主机的MAC 地址的。在以太网中,一个主机要和另一个主机进行直接通信,必须要知道
目标主机的MAC 地址。但这个目标MAC 地址是如何获得的呢?它就是通过地址解析协议获得的。所谓“地
址解析”就是主机在发送帧前将目标IP 地址转换成目标MAC 地址的过程。ARP 协议的基本功能就是通过
目标设备的IP 地址,查询目标设备的MAC 地址,以保证通信的顺利进行。
二、ARP 协议的工作原理
在每台安装有TCP/IP 协议的电脑里都有一个ARP 缓存表,表里的IP 地址与MAC 地址是一一对应的,如
附表所示。
附表
ip 地址mac 地址
192.168.1.100-aa-00-62-c6-09
192.168.1.200-aa-00-62-c5-03
192.168.1.303-aa-01-75-c3-06
…… ……
我们以主机A(192.168.1.5)向主机B(192.168.1.1)发送数据为例。当发送数据时,主机A 会在自己的
ARP 缓存表中寻找是否有目标IP 地址。如果找到了,也就知道了目标MAC 地址,直接把目标MAC 地址
写入帧里面发送就可以了;如果在ARP 缓存表中没有找到相对应的IP 地址,主机A 就会在网络上发送一
个广播,目标MAC 地址是“FF.FF.FF.FF.FF.FF”,这表示向同一网段内的所有主机发出这样的询问:
“192.168.1.1 的MAC 地址是什么?”网络上其他主机并不响应ARP 询问,只有主机B 接收到这个帧时,才
向主机A 做出这样的回应:“192.168.1.1 的MAC 地址是00-aa-00-62-c6-09”。这样,主机A 就知道了主
机B 的MAC 地址,它就可以向主机B 发送信息了。同时它还更新了自己的ARP 缓存表,下次再向主机B
发送信息时,直接从ARP 缓存表里查找就可以了。ARP 缓存表采用了老化机制,在一段时间内如果表中
的某一行没有使用,就会被删除,这样可以大大减少ARP 缓存表的长度,加快查询速度。
三、如何查看ARP 缓存表
ARP 缓存表是可以查看的,也可以添加和修改。在命令提示符下,输入“arp -a”就可以查看ARP 缓存表中
的内容了。
用“arp -d”命令可以删除ARP 表中某一行的内容;用“arp -s”可以手动在ARP 表中指定IP 地址与MAC 地
址的对应。