ARP协议
来源:互联网 发布:来自故宫的礼物 淘宝 编辑:程序博客网 时间:2024/06/05 10:17
ARP协议作用:
OSI 模式把网络工作分为七层,彼此不直接打交道,只通过接口(layer interface)。IP地址在第三层, MAC地址在第二层。在网络通讯时,协议在发送数据包时,得先封装第三层(IP地址),第二层(MAC地址)的报头, 源主机的应用程序知道目的主机的IP地址和端口号,却不知道目的主机的硬件地址,而数据包首先被网卡接收到再去处理上层协议,如果接收后的数据包的硬件地址与本机不符,则直接丢弃,因此在通讯前必须获得目的主机的硬件地址。即ARP协议(Address Resoulution Protocol 地址解析协议)的作用,将IP地址解析为以太网MAC地址(物理地址)。
ARP数据包格式
以太网目的地址:目的主机的mac地址,在ARP协议中卫全F,即广播方式
帧类型(两个字节):表示后面数据的类型。ARP请求或应答来说,该字段的值为0X0806
硬件类型字段:指发送方想知道的硬件地址的类型,即链路层网络类型,以太网的值为1
协议类型字段:表示要映射的协议地址类型,IP为0X0800
硬件地址长度和协议地址长度:指明了硬件地址和高层协议地址的长度,这样ARP帧就可以在任意硬件和任意协议的网络中使用。对于以太网上IP地址的ARP请求或应答来说,它们的值分别为6和4
操作字段(OP):用来表示这个报文的类型,ARP请求为1,ARP响应为2
发送端的以太网地址:源主机硬件地址,6个字节;
发送端IP地址:发送端的协议地址(IP地址),4个字节;
目的以太网地址:目的端硬件地址,6个字节;
目的IP地址:目的端的协议地址(IP地址),4个字节。
工作原理:
IP网络环境下,每个主机都分配了一个32位的IP地址,这种互联网地址是在网际范围标识主机的一种逻辑地址。
主机A(源)、B(目的)之间通信,在A不知道B的MAC地址的情况下,A就广播一个ARP请求包,请求包中填有B的
IP,以太网中的所有主机都会接收这个请求,而正常的情况下只有B会给出ARP应答包,在B应答发送的消息,该以太
网其他主机也会接收到,但在数据链路层判断MAC地址不符后会丢弃。B的应答包中就填充上了B的MAC地址,并回
复给A。A得到ARP应答后,将B的MAC地址放入本机缓存,便于下次使用。
本机MAC缓存是有生存期的,生存期结束后,将再次重复上面的过程。
简单介绍,下面这篇文章有较详细的原理讲解。
点击打开链接
- arp协议,arp欺骗
- ARP协议
- ARP协议
- ARP协议
- arp协议
- ARP协议
- ARP协议
- ARP协议
- ARP 协议
- ARP协议
- ARP协议
- ARP协议
- ARP协议
- ARP协议
- ARP 协议
- arp协议
- ARP协议
- ARP协议
- iOS 取四舍五入取平均值
- leetcode题解-234. Palindrome Linked List
- iOS 【你的项目内存溢出了吗?】
- 使用Gecco写Java简单爬虫
- 使用SVN
- ARP协议
- Listener监听器总结
- 使用Lable展示emoji表情
- 2017.06.23 python套接字第1次笔记
- 8.4.2 ResultTask执行结果与Driver的交互原理及源码详解
- C++多态的实现原理
- 有关Material Design Library 的使用
- angular2项目部署到weblogic
- git的使用