67.ARP协议
ARP是地址解析协议Address Resolution Protocol的缩写。是一个位于TCP/IP协议栈中的低层协议,负责将某个IP地址解析程对应的MAC地址。在局域网中,网络实际传输的是“帧”,而帧里面包含了目标主机的MAC地址。在以太网中,一台主机要和另一台主机进行直接通信,必须要知道目标主机的MAC地址。但是这个目标主机的MAC地址是如何获得的呢?他就是通过ARP地址解析协议获得。所谓地址解析就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。ARP的基本功能是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。
在每台安装有TCP/IP协议的电脑里都有一个ARP缓存表,表里的IP地址与MAC地址是一一对应的。
我们以主机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 -a”就可以查看ARP缓存表中的内容。用“arp -d”命令可以删除ARP表中某一行的内容,用“arp -s”可以手动在ARP表中指定IP地址与MAC地址的对应。
最新文章
- [LeetCode] Maximum Product of Word Lengths 单词长度的最大积
- HDU 4862(费用流)
- 2-Highcharts 3D图之3D柱状图带可调试倾斜角度
- 10 signs you’re dating the wrong person
- HZNU1015: 矩阵排序
- bzoj1040
- Metasploit介绍
- Properties/Property文件读取(键值均)乱码问题!
- UI界面
- 顺序栈和链式栈(C++实现)
- Win7 Cygwin环境试验Nutch tutorial遇到的异常解决方法
- Python tab 命令补全,以及 vim 补全
- UVa - 1616 - Caravan Robbers
- 比较Fink, macports 跟 homebrew
- HTML&;javaSkcript&;CSS&;jQuery&;ajax-Css
- 20170805_linux
- January 05th, 2018 Week 01st Friday
- WCF系列(六) - WCF安全系列(一) - basicHttpBinding
- Tomcat内存优化
- Babel(抽象语法树,又称AST)