ARP(二)LVS的辅助理解

数据的走向!

谁发送数据!

ARP请求:谁的MAC!

解决的问题---->来一层一层的分析!

#######################

一、MAC地址铺垫

        MAC地址:简单说就是用来上网(目的)的设备的物理地址(早期的不可变),比如常见的电脑的网卡路由器手机等等能够联网的大家常常称之为以太网的硬件物理地址,不会因为联网的数据变化而发生变化

        原因:在出厂时已经固化在网卡上,不会发生变化,所以你电脑上的MAC地址是唯一的

        MAC地址,也称为物理地址、硬件地址,存储在设备的EPROM中,长度为48bit,前24位作为组织唯一性标识符,由IEEE分配给各个厂家,比如华为、思科、小米、高通等等,也就是24位标识是设备厂商;后24位厂家自己分配。尽管说mac地址具有唯一性,就如同大家的身份证一样,但还是可以更改的,MAC地址并不能保证唯一性,而且用户可以随意修改电脑的MAC地址

        思考1MAC地址一定不会发生变化吗

        注:由上可知mac地址一般存放在EPROM/EEPROM里,而这种ROM是可修改的,这点就证明存在这种可擦除ROM里的MAC可能会被修改

        补充:mac地址真的是全球是唯一的吗

        EPROM:Erasable Programmable ROM,可擦除可编程ROM

        PROM:Programmable ROM,可编程ROM

       思考2:即使MAC地址是可以随意修改的,但是并没有影响到相互通信,这是为什么呢

       带着问题,我们进入到第二小节

二、ARP协议

       问题引入1:我们常说确定了IP地址,就可以向这个目标地址发送IP数据包?

       问题引入2:同一个局域网为什么不能有相同的IP?

       MAC地址是工作在物理层和数据链路层,路由器和交换机依托于MAC地址!

       明白:两台设备通信最终是通过IP地址通信的,但是在局域网中只认识MAC地址!

       思考:在局域网中如何知道对方的IP地址呢

(1)ARP的概念

       地址解析协议(Address Resolution Protocol ),为了解决地址问题的协议,以目标IP为线索(导火线),用来定位下一个应该接受数据分包网络设备对应的MAC地址

       不同链路(不在同一个局域网,不同的网段):通过ARP查找下一跳路由器的MAC地址

       交换机和路由器的区别

       这个总结单很到位

       比较生活化的介绍

       区别1:交换机发生在网络第二层数据链路层,而路由器发生在第三层网络层,这是两者各自工作方式根本区别

       区别2:讲过交换机是根据MAC地址寻址的,路由器可以根据IP地址寻找下一个设备,可以处理TCPIP协议。

       明白:Linux系统具有内核路由的功能,默认是不开启

       数据:都是从网卡接口发出去的!

(2)ARP的工作机制

问题:ARP是如何知道MAC地址?

简答:ARP是借助ARP请求与ARP响应两种类型的包来确定MAC地址!

       过程:主机A为了获得主机B的MAC地址,起初通过广播发送一个ARP的请求包(MAC数据帧),这个包中包含了想要自己主机的MAC地址,目的主机IP地址。由于广播的包可以被同一链路上所有的主机路由器接收,因此ARP的请求包也会被同一链路上所有的主机或路由器解析,发现ARP的请求包的目标IP地址自己的IP地址一致,就将这个节点就会将自己的MAC地址塞进ARP的响应包中,并返还给主机A,通过ARP从IP地址获得MAC地址,实现了链路内的IP通信

思考:如果每发一个IP数据报,都要进行一次ARP地址请求以确定MAC地址,会造成不必要的网络流量,怎么办?

流量:数据包的传递所造成的!

做法:将获取到的MAC地址缓存一段时间,即将第一次获取到的IMAC地址和其IP建立映射关系,并记录到一个ARP缓存表中

好处:下一次再向这个IP地址发送数据报时不需要重新发送ARP请求,直接使用ARP缓存表中的MAC地址进行数据的发送!

注意:MAC地址的缓存是有一定期限的(默认300秒),并且每执行一次ARP,其对应的缓存内容都会被清除!

ping过程详细解读

arp命令详解

参考1

参考2

(3)MAC地址和IP的关系

         通俗的理解:MAC地址像是我们的身份证,到哪都是那个样子(不会发生变化);IP像是居住证,换了地方(局域网-->不同的区域-->含义不一样了)信息就要变了。政府机构同时给公民发身份证和居住证以便管理动态的社会,网络管理机构则通过给所有的上网设备同时分配MAC和IP达到这个目的。

        疑惑1:数据链路上只要知道接受端的MAC地址不就知道数据是准备发送给谁的,为什么还需要知道它的IP地址?

        解析:IP层抽象的互联网屏蔽了下层很复杂的细节,在抽象的网络层上讨论问题,就能够使用统一的、抽象的 IP地址研究主机和主机或主机和路由器之间的通信。通俗一点来说就是有了IP地址,就只通过路由器找到目的主机,屏蔽了下层网络的异构型,由MAC地址完成下层的实际转发。

        总的来说:IP地址在网络中体现的是"我在哪里",而mac地址则在二层通信中体现"我是谁"!

        以太网发送IP包时,核心是下次要经过哪个路由器发送数据包

       下一个路由器含义:相应的路由器的MAC地址!

       路由器作用SNAT和DNAT,做地址转换,进行路由转发

       路由器的知识,讲的特别好!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值