网络传输中的三张表,MAC地址表、ARP缓存表以及路由表

刚接触这三个表时觉得并不难,但是后来突然再提起的收发现自己有些混淆,所以再翻出来看了看,将笔记也整理了出来。

一:MAC地址表详解
说到MAC地址表,主要是交换机的工作原理,因为交换机是根据MAC地址表转发数据帧的。

一、交换机的工作原理:

mac地址学习----->基于端口(源mac地址)学习
pcA--------------g0/0/1----sw
ip:192.168.1.1
mac:00-00-00-00-01(举例)

交换机-查看mac表:
dis mac-address dynamic----------查看mac地址表

拓扑如下:

clipboard.png

pc0----pc2----连接过程分析:

首先:先检查pc2是否和pc0在同一网段,在的话--->step1
不在的话,去找网关(路由表)。

step1:pc0先检查自己的arp表是否有pc2的mac地址表;

step2:如果pc0没有pc2的arp表,pc0会发一个广播报文(谁是pc2的mac地址,告诉pc0-mac地址),带着源mac(pc0)和目的mac(全F-广播),交换机1收到后会发给所有端口和交换机2,交换机2会发给其他pc。

step3:只有pc2收到后会给pc0回报(单播)

step4:学习完了,pc0-->pc2

二、ARP缓存表详解

上面我们了解了交换机的工作原理,交换机是通过MAC地址通信的,但是我们是如何获得目标主机的MAC地址呢?
这时我们就需要使用ARP协议了,在每台主机中都有一张ARP表,它记录着主机的IP地址和MAC地址的对应关系。

ARP协议:地址解析协议,ARP协议是工作在网络层的协议,它负责将IP地址解析为MAC地址。

1).每个主机都会在自己的 ARP 缓冲区中建立一个 ARP 列表,以表示 IP 地址和 MAC 地址之间的对应关系。
2).主机(网络接口)新加入网络时(也可能只是mac地址发生变化,接口重启等), 会发送免费ARP报文把自己IP地址与Mac地址的映射关系广播给其他主机。
3).网络上的主机接收到免费ARP报文时,会更新自己的ARP缓冲区。将新的映射关系更新到自己的ARP表中。
4).某个主机需要发送报文时,首先检查 ARP 列表中是否有对应 IP 地址的目的主机的 MAC 地址,如果有,则直接发送数据,如果没有,就向本网段的所有主机发送 ARP 数据包,该数据包包括的内容有:源主机 IP 地址,源主机 MAC 地址,目的主机的 IP 地址等。

ARP协议工作原理:

1)如果主机A想发送数据给主机B,主机A首先会检查自己的ARP缓存表,查看是否有主机B的IP地址和MAC地址的对应关系,如果有,则会将主机B的MAC地址作为源MAC地址封装到数据帧中。如果没有,主机A则会发送一个ARP请求信息,请求的目标IP地址是主机B的IP地址,目标MAC地址是MAC地址的广播帧(全F),源IP地址和MAC地址是主机A的IP地址和MAC地址。

2)当交换机接受到此数据帧之后,发现此数据帧是广播帧,因此,会将此数据帧从非接收的所有接口发送出去。

3)当主机B接受到此数据帧后,会校对IP地址是否是自己的,并将主机A的IP地址和MAC地址的对应关系记录到自己的ARP缓存表中,同时会发送一个ARP应答,其中包括自己的MAC地址。

4)主机A在收到这个回应的数据帧之后,在自己的ARP缓存表中记录主机B的IP地址和MAC地址的对应关系。而此时交换机已经学习到了主机A和主机B的MAC地址了。

arp -a 查看arp缓存表
arp -d 清除arp缓存表

三、路由表详解

路由器负责不同网络之间的通信,它是当今网络中的重要设备,可以说没有路由器就没有当今的互联网。在路由器中也有一张表,这张表叫路由表,记录着到不同网段的信息。路由表中的信息分为直连路由和非直连路由。

直连路由:是直接连接在路由器接口的网段,由路由器自动生成。

非直连路由:就是不是直接连接在路由器接口上的网段,此记录需要手动添加或者是使用动态路由。

路由表中记录的条目有的需要手动添加(称为静态路由),有的测试动态获取的(称为动态路由)。直连路由属于静态路由。

参考文章:https://www.cnblogs.com/dyh004/p/10186237.html

标签: none

添加新评论