网络数据包在传输过程,包中的MAC是怎样变换的。

谢邀请。主机Host A 要向 Host B 发送数据,路由器对数据的封装过程如下。网络数据包在传输过程,包中的MAC是怎样变换的。

网络数据包在传输过程,包中的MAC是怎样变换的。

网络数据包在传输过程,包中的MAC是怎样变换的。

网络数据包在传输过程,包中的MAC是怎样变换的。


■网友
MAC地址如果不开proxy,只在本地网段内使用A跨网段发给B的时候,A发出的数据包目的MAC地址写的是A的网关MACA的网关转发这个包的时候目的MAC写的是路由表中下一跳next hoop的MAC地址
■网友
源mac不变,源ip,目的ip是不变的,
【网络数据包在传输过程,包中的MAC是怎样变换的。】 你的IP到路由器后经过NAT地址转换成外部IP+端口然后传出去。
推荐你看个视频,可以参考一下。
DNS原理分析及应用_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili

■网友
通过arp获取到网关mac,然后封包
■网友
如果是纯二层转发,在转发过程中,包中的源Mac和目的Mac都保持不变
如果是三层转发,在转发时,每经过一个节点,会将源Mac和目的Mac根据节点上的ARP表进行替换

■网友
在不考虑代理的情况下,数据包每到一个三层,就把源MAC替换成自己的出接口MAC,目标MAC替换成下一跳MAC,不跨三层不替换。
■网友
例:
拓扑:PC1(IP:A)--SW1--R1--SW2--PC2(IP:B)
PC1发送数据给PC2。
流程如下。
PC1发给PC2不管经过多少设备,源IPA和目的IPB是不会变的。
PC1-SW1:源MAC地址为PC1,目的MAC地址为SW1。
SW1-R1:源MAC地址为SW1,目的MAC地址为R1。
R1-SW2:源MAC地址为R1,目的MAC地址为SW2。
SW2-PC2:源MAC地址为SW2,目的MAC地址为PC2。


    推荐阅读