网络三张表:ARP表, MAC表, 路由表,实现你的网络自由

首先,说一下网络中的数据包

首先我们需要知道,网络上传输的东西是什么?

在使用TCP/IP协议传输时,网络上的数据,是以二进制数据包的形式传输的,核心的三个部分,如下:

这个数据包,其中有这么几个字段很重要:

这些都是和地址相关的, 就像寄送快递,这就是里边的 收件人电话,收件人地址,有了这个地址信息,对方才能收到这个包。

在网络中,每一台计算机,每一个通讯设备,都有自己的地址,包含 IP 地址和 MAC 地址。

注意: MAC地址 又称为 硬件地址 、 物理地址 (因为这种地址用在MAC帧中)。

为什么需要那么多地址呢?

一个ip地址,还要一个mac地址。

原因是,网络协议是分层的。 不同的地址,给不同的层使用。

什么是网络层,什么是链路层?

请参见TCP/IP协议与七层ISO模型的对应关系,大致如下图所示:

图:TCP/IP协议与七层ISO模型的对应关系

网络三张表1:ARP表

网络中的三张表ARP表, MAC表, 路由表

先看第一个 ARP表。 提起ARP表必然先想起ARP(address resolution protocol)协议,地址解析协议。

为什么需要 ARP 协议?

链路层中,同一局域网中的一台主机要和另一台主机进行通信,需要通过 MAC 地址进行定位,然后才能进行数据包的发送。

而在网络层中,计算机之间是通过 IP 地址定位目标主机,对应的数据报文只包含目标主机的 IP 地址,而没有 MAC 地址

因此,在发送之前,需要做个翻译的工作:根据 IP 地址获取 MAC 地址。