ARP简单解释001

本期,我就来解答一下关于ARP的工作原理吧! 

思路

1、思考ARP到底是干嘛的? 为什么要有它?why?  

2、掌握ARP的工作原理。

技术人,要掌握一种技术,绝对离不开以上两点基本思路,带着这两个思路去学习新技术,你绝对是不可能学不会的。再笨,你也会学得很深刻的。甚至,你还可以有更多的思路,比如,可不可以没有它? 有它?跟没有它的情况又是什么样的?等等。

 

1、ARP到底是干嘛的?

我们都知道局域网里面通信,都是靠MAC地址来通信的。ARP简单说,就是用来把IP地址转换成MAC地址,就是某个去往目的IP地址翻译成MAC地址。

交换机的工作原理就是基于源MAC地址学习,基于目的MAC地址转发的。大家都知道网络的参考模型,我们在电脑上要发送消息时,电脑内部的处理机制是先从上层开始一层一层往下封装的。如图:


现在,有了这张图,就更容易理解ARP的作用了。

电脑从上层往下封装,到了二层,要封装帧头部时,就需要把目的mac地址封装上,形成完整的二层头部后,就可以发送出去了。

 

现在的问题就是,电脑如何知道对方的MAC地址?

看完后,搞懂ARP的工作原理,其实并不难!

 


计算机A要发送消息,给计算机E。他们是第一次通信。

 

当用户计算机A在上使用QQ聊天工具,输入:你好,约吗?

回车,计算机A就先从上层往下封装头部。如IP头部就将

目的IP:1.1.1.2   , 源IP就是:1.1.1.1 等信息进行封装,到了二层,就需要将目的MAC地址,源MAC地址进行封装。计算机A肯定知道自己网卡的mac地址,为1111.1111.1111.1111。但是目的mac地址(计算机E的mac地址)就不知道了,因为他们是第一次通信,哪里知道啊~  要是知道,就上天了!

于是,这时候,计算机A就执行ARP程序,发送一个ARP请求报文的广播包:

该数据包的关键字段如下:


二层:

目的MAC地址:ffff.ffff.ffff.ffff

源mac地址:1111.1111.1111.1111

类型:0x0806

arp的关键内容如下:

source mac:1111.1111.1111.1111.1111

source IP: 1.1.1.1

target mac:ffff.ffff.ffff.ffff (因为第一次通信,不知道对方的mac地址)

target IP:1.1.1.2

这样,交换机收到这个报文,看到目的mac地址是全F就进广播!

阿龙这里要提醒初学者的是,因为交换机是二层设备,只会拆包、解析到二层信息而已,不会进行更深入的解析,如网络层信息。换句话说,就是交换机根本不知道里面是什么数据,只知道这个数据包的源、目mac地址而已。

这样,所有的计算机收到这个广播包,会进行更深入的解析,看到里面的target IP 是1.1.1.2,  与自己的IP地址进行对比,发现不一样,就丢弃。发现一样,就回应ARP报文。单播回应喔!

 

ARP的响应报文里的关键字段如下,


二层:

目的MAC地址:1111.1111.1111.1111

源mac地址:2222.2222.2222.2222

类型:0x0806

arp的关键内容如下:

source mac:2222.2222.2222.2222

source IP: 1.1.1.1

target mac:1111.1111.1111.1111 (从请求包里得知A的mac地址,于是单播)

target IP:1.1.1.1


 

这样,计算机A收到这个报文后,就将计算机E的mac地址记录下来,存在计算机A的一个数据库,叫做ARP缓存表。下次通信时,如果缓存未超时,就可以直接使用了。如果超时了,就再次进行arp请求广播了。

如果你还不信的话,那龙哥就亲自动手做实验吧!  

 

计算机A的信息:

 

计算机E的信息:

 

用计算机A ping 计算机E来模拟A发送消息给计算机E,并且抓包:

 

抓包就会发现抓到了2个ARP的报文:


分别如下:

1、

 

2、

 

这时,你就可以在计算机A看到arp缓存表了:

 

不知道,那位同学明白了没? 如以上有讲错地方,欢迎大家在下方评论地方指出! 如您还有其他见解,也欢迎您在下方评论的地方进行参与。

感觉您的阅读! 祝您学习愉快!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值