ARP-Address Resolution Protocol-地址解析协议
主要内容摘自:图解TCP/IP
ARP是一种解决地址问题的协议。以目标IP地址为线索,用来定位下一个应该接受数据分包的网络设备的mac地址。
如果目标主机不在同一个链路上时,可以通过ARP查找下一跳路由器的MAC地址。
不过ARP只适用于IPv4,不能用于IPv6。IPv6可以用ICMPv6替代ARP发送邻居探索消息。
ARP的工作机制
ARP是如何知道MAC地址的呢?简单地说,ARP是借助ARP请求与ARP响应两种类型的包确定MAC地址的。
从一个IP地址发送ARP请求包以了解其MAC地址(同时ARP请求包也将自己的MAC地址告诉了对方),目标地址将自己的MAC地址填入其中的ARP响应包返回到IP地址。由此,可以通过ARP从IP地址获得MAC地址,实现链路内的IP通信。
不是每次发送一个IP数据报都要进行一次ARP请求,接收端主机缓存MAC地址,提高效率,避免不必要的网络流量。
记录IP地址与MAC地址对应关系的数据库叫做ARP表。在UNIX或windows中可以通过“arp -a”命令获取该表信息。每执行一次ARP,其对应的缓存内容都会被清除。此外,MAC地址的缓存是有一定期限的。超过这个期限,缓存的内容将被清除。
ARP包格式

RARP
RARP (Reverse Address Resolution Protocol)是将ARP反过来,从MAC地址定位IP地址的一种协议。
一般用于向RARP服务器获取IP地址。
代理ARP
通常ARP包会被路由器隔离,但是采用代理ARP(proxy ARP)的路由器可以将ARP请求转发给邻近的网段。由此,两个以上的网段的节点之间可以像在同一个网段中一样进行通信。
在目前的TCP/IP网络中,一般情况下用路由器连接多个网络时,会在每个网段上定义各自的子网,从而进行路由控制。然而,对于那些不支持设定子网掩码的老设备来说,不适用代理ARP,有时就无法更好地适用网络。
ARP命令
一般执行arp -a即可显示所有网口mac。windows mac如下,-s添加,-d删除,-a显示。
ARP -s inet_addr eth_addr [if_addr]
ARP -d inet_addr [if_addr]
ARP -a [inet_addr] [-N if_addr] [-v]
ARP包解析
通过wireshark抓取arp包。
arp请求包

arp响应包

ARP-Address Resolution Protocol-地址解析协议的更多相关文章
- ARP(Adress Resolution Protocol): 地址解析协议
地址解析协议(Address Resolution Protoclol),其基本功能为通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利.它是IPV4中网络层必不可少的协议.不过在IP ...
- arp:地址解析协议(Address Resolution Protocol)(来自维基百科)
地址解析协议(Address Resolution Protocol),其基本功能为通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。它是IPv4中网络层必不可少的协议,不过在I ...
- ARP(Address Resolution Protocol)地址解析协议初识
ARP址解析协议是根据IP地址获取物理地址的一个TCP/IP协议.它工作在OSI七层模型的中第二层——数据链路层. 使用ARP地址解析协议,可根据网络层IP数据包包头中的IP地址信息解析出目标硬件地址 ...
- Neighbor Discovery Protocol Address Resolution Protocol
https://en.wikipedia.org/wiki/Address_Resolution_Protocol The Address Resolution Protocol (ARP) is a ...
- 地址解析协议ARP(Address Resolution Protocol)
1.引言 说明: ARP的作用,解决了什么问题: 以太网中的链路层,可能会采用不同的网络技术,而且不以ip作为路由依据. 链路层以mac地址作为路由依据. ARP的功能是在32 bit的IP地址和采用 ...
- 网络协议抓包分析——ARP地址解析协议
前言 计算机之间可以相互通信的前提是要知道对方的地址,才可以发送信息给其他计算机,就像别人要联系你也得先知道你的电话号码一样.这里的地址因为网络分层的原因就包括IP地址和MAC地址(即网卡地址.硬件地 ...
- ARP (地址解析协议)
地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议.主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机, ...
- 【RL-TCPnet网络教程】第23章 RL-TCPnet之地址解析协议ARP
第23章 RL-TCPnet之地址解析协议ARP 本章节为大家讲解ARP(Address Resolution Protocol,地址解析协议),通过前面章节对TCP和UDP的学习,需要大家 ...
- TCP/IP的排头兵――地址解析协议(ARP) (转载)
转自:http://blog.csdn.net/wangxg_7520/article/details/2488442 一.引言 古人行军打仗,都要有一个可以引领队伍前进方向的排头兵,在TCP/IP网 ...
- ARP(地址解析协议)
目录 1. ARP 概述 2. ARP 协议工作原理 3. ARP 缓存 4. ARP 报文格式 5. 抓包分析 5.1. ARP 请求报文 5.2. ARP 应答报文 6. 免费 ARP 7. AR ...
随机推荐
- 纯CSS实现文字一行居中,多行左对齐的方法
其实这种需求还是蛮常见的,主要用于产品列表页面,用于产品图片下面,显示产品的名称. 想要实现的效果为: 未知文字长度,当文字长度小于盒子宽度,也就是一行时,文字居中. 当文字长度大于盒子的宽度,会自动 ...
- Docker Swarm 让你事半功倍
2016 年 DockerCon (天啊……我多么希望我当时在场)上展示的最重大的变革之一就是 1.12 版本引擎的 Swarm 模式.它意味着什么呢?它意味着:如果你在运行 Docker 1.12时 ...
- appium运行报错
1.new AppiumDriver<>(new URL(url), capabilities) 报错 java.lang.NoSuchMethodError:com.google.com ...
- 如何在asp.net mvc框架及django框架下面避免CSRF
CSRF 跨站伪造请求 不知CSRF为何物的,可以问下G哥. 在Asp.net MVC平台下,提供了Html.AntiForgeryToken() 方法,我们只需把其放在form的标签内,在浏览器端就 ...
- vi 新建编辑文件时报错 E212 can’t open file for writing
在vi修改防火墙配置时,不能够保存,报E212 can’t open file for writing错误. 网上大概给出了两种答案. 一是权限不够,可以用root权限事实,或者sudo 操作. 二是 ...
- ListView改变字体
ListView中没有改变字体的属性和方法,所以需要用其他的方式.这里使用ArrayAdapter. 首先,创建一个TextView组件,用来作为Adapter的列表项组件. 在layout文 ...
- PHP上传文件类 代码练习
类文件: <?php class upload{ protected $fileName; protected $uploadPath; protected $maxSize; protecte ...
- MongoDB数据库设计中6条重要的经验法则
Part 1 原文:6 Rules of Thumb for MongoDB Schema Design: Part 1 By William Zola, Lead Technical Support ...
- .htaccess 文件中详细介绍
#如果存在rewrite_module 模块则执行里面的代码 <IfModule rewrite_module> #开启重写机制 RewriteEngine On #告诉apache这里不 ...
- Protocol Informatics (PI项目)【基于网络轨迹的协议逆向工程文献学习】
Protocol Informatics[基于网络轨迹的协议逆向工程文献学习]by tsy 声明: 1)本报告由博客园bitpeach撰写,版权所有,免费转载,请注明出处,并请勿作商业用途.恕作者著作 ...