第四章 地址解析协议 arp(仅限于ipv4)

由硬件交换的帧需要使用正确的硬件地址定位到正确的接口;否则,无法传输数据。
一个传统IPv4网络需要使用自已的地址: 32位的IPv4地址。一台主机要将一个帧发送到另一台主机,还需要要发往主机的物理地址
(这里的物理地址是数据帧即将要发往的主机,而不是数据帧最终要发往的主机)

地址解析协议

提供了IPv4地址和物理地址间的动态映射(自动执行随时间变化,不需要管理员重新配置)。就是能够通过ip地址获得物理地址。用的方法就是喊一声!

ARP仅用于IPv4, IPv6使用邻居发现协议,它被合并人ICMPv6

网络层地址为IP地址,由网络管理员,或者用户指定分配,可随时更改。
而数据链路层地址为物理地址,是在网卡出场的时候写入网卡中,不能更改。
地址解析就是建立这两个地址之间的映射关系。

两个局域网的主机之间传输的以太网帧包含IP数据报时,由48位以太网地址确定该帧的目的接口。只有数据帧达位于同一IP子网的系统时, ARP才能工作。(数据帧貌似一直都只在不同的子网中传播的吧。)

例如:
同一子网中的两台计算机要进行通信:

  1. 使用子网掩码判断目标主机与源主机位于同一子网中。(假设没有arp缓存)
    在这一步的时候已经到了链路层
  2. 在一个共享的链路层网段上, 源主机ARP向所有主机发送一个称为ARP请求的以太网帧。这被称为链路层广播
    who has .....
  3. 某个主机使用请求中指出的IPv4地址,它需要响应一个ARP应答。
    不同虚拟局域网中的主机不会收到
  4. 收ARP请求的源主机学习(也就是记录)IPv4到MAC地址的映射,并记录在内存中供以后使用。
  5. 源主机可将数据报封装在以太网帧中直接发送到目的主机。
    由于这个以太网地址仅指向正确的目的主机,其他主机或路由器接收到这个数据包以检测物理地址与自己的不匹配,然后扔掉了。
  6. 同一子网中的路由器通信不需要经过路由器
    他经过交换机!!!
    同一网段内的两台主机通信是否需要路由器

ARP缓存

IPv4地址映射到硬件地址后,将这个这一个映射关系(也就是这个键值对)存起来,对应于高速缓存中的一个条目,其正常到期时间是条目创建开始后的20分钟。

使用arp -a查看

arp缓存

动态是指主动学习(通过arp获得的),而静态就是手动输入。

linux下是一栏flag,对应window的类型。
可能为C、M、P。
C类条目由ARP协议动态学习也就是接收到数据报就记录了, M类条目通过手工输人,而P类条目的含义是“发布”,也就是主动获取的。

帧格式

arp帧格式

注意这个图,这是完整的以太网帧,黑色是有效荷载部分,所以他是链路层的,不是ip层的。

  1. DST:目的地址 6B
    也就是接受这个数据帧的下一台主机的物理地址。
    在arp中通常不知道采取询问,所以物理地址为全f
    对于ARP请求,目的以太网地址ff:ff:ff:ff:ff:ff(全部为1)是广播地址,在同一广播域中的所有以太网接日可接收这些帧。
  2. SRC:源地址 6B
    发送该数据帧主机的物理地址。
  3. 长度或类型 2B
    arp中必须为0x0806。
  4. 接下来的 8B
    长度/类型字段之后的前4个宇段指定了随后4个字段的类型和大小。
    硬件类型字段指出硬件地址类型,对于以太网该值为1。
    协议类型字段指出映射的协议地址类型。对于IPv4地址,该值为0x0800
    硬件大小和协议大小分别指出硬件地址和协议地址的字节数,以太网中使用IPv4地址的ARP请求或应答.它们的值分别为6和4。物理地址长度6,ip地址长度4
  5. Op 2B
    op字段指出该操作是ARP请求(1)、 ARP应答(2)、 RARP请求(3)或RARP应答(4)。
    由于ARP请求和ARP应答的长度/类型字段相同.因此这个字段是必需的。
  6. 发送方物理地址,发送方协议地址 10B
  7. 接收方物理地址,发送方协议地址 10B
    对于各arp请求,其目的硬件地址为全0

当一个系统接收到一个ARP请求.它填充自己的硬件地址.将两个发送方地址和接收方地址互换.将Op
字段设为2.然后发送生成的应答。

arp请求

arp请求
arp请求——红色为分割点

嗯就这些。

也可能是42bit

arp应答

arp应答

其目的主机物理地址应该被填充的。

目的主机发送ARP应答外,它还会在ARP缓存中保存请求者的硬件地址和IP地

arp缓存

一般有效期为20分钟,不完整的arp为3分钟(只发送了请求,但是没有收到回应)
软状态☞超时前没有被更新而丢弃的信息。

ARP代理

有那么一台无聊的主机,准们回答arp请求的。
这个作用没搞懂,用于隐藏目的主机。
比如,访问谷歌。但是,却被代理arp返回了错误的物理地址。我们和谷歌永别了。

主机不存在

如果尝试访问一个不存在的主机,会首先卡死在arp上,因为主机不存在,根本没有人会回应这条请求。

免费arp

与普通的arp请求一样,不期望收到回复,如果收到就是有冲突了

  1. 允许一台主机确定另一台主机是否配置相同的IPv4地址。
    如果ip冲突,什么都不显示,就是不让你上网。
  2. 更改主机的物理地址(换硬件之类的)

ARP探测分组和通告分组

探测用于检测是否有使用这个ip的,通告用于高速别的主机,我已经使用了这个ip
通告之前需要先探测

ipv4地址冲突检测 ACD,使用arp分组,将发送方协议地址设置为9,避免污染已经缓存的arp缓存(如果ip地址被使用,那么可能已经缓存arp,所以要避免这种情况),这是与免费arp的主要区别。
如果收到arp回复,那么表明候选的ip(请求使用ip主机选择的ip地址)已经被使用。
如果没有收到请求,就会想广播域中发送2个arp通告,表明它已经在使用这个ip地址了。
arp通告将发送方协议地址和目的协议地址填充为候选的ipv4地址。

arp分配ip地址

使用主机配置嵌入式设备的ip

不常用,一般都是DHCP分配
但是有一些嵌入式设备不能手动获取的时候。

一个主机先生成一个ip-mac映射,其中mac为嵌入设备的物理地址,ip为任选一个不冲突的。
然后向嵌入设备发送一个数据包,此时设备接收到一个以自己物理地址为目标地址的数据帧时,这个设备可以用数据帧中的ip完成配置。
这需要嵌入设备的配合和主机的配合。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,084评论 6 503
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,623评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,450评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,322评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,370评论 6 390
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,274评论 1 300
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,126评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,980评论 0 275
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,414评论 1 313
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,599评论 3 334
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,773评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,470评论 5 344
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,080评论 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,713评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,852评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,865评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,689评论 2 354

推荐阅读更多精彩内容