当其中一个足以识别来源时,为什么我们需要数据包中的源IP地址和源MAC地址的信息?所有协议都需要它们吗?
编辑:对不起,我忘了在包裹中提及""。我想知道从源到目的地的数据包传输。谢谢。
答案 0 :(得分:0)
MAC地址是第2层地址,IP地址是第3层地址,端口是第4层地址。
MAC地址不在数据包标头中,它们位于帧头中。数据包标头中只有第3层地址。端口位于段头中。
MAC地址仅在LAN上有效。它们位于帧头中,帧在第3层边界(路由器)处被剥离。然后,路由器使用具有第3层地址的第3层报头将数据包转发到下一个接口,在该接口中,路由器将为新的第2层链路构建新的第2层帧,其中包含新的第2层地址。 / p>
答案 1 :(得分:0)
在网络中,只有IP地址就足够了。但是在不同的网络中,路由器需要根据MAC地址解析IP地址。 IP地址可能不同,但MAC地址是不变的。机器可以通过物理地址即MAC连接到另一台机器。
对于大多数TCP / IP协议,您需要两者。
答案 2 :(得分:0)
您需要源IP地址,因为回复将会出现。这将在数据包中保持不变。这也不一定是有效的。 (就像IP地址欺骗一样。)
下一跳(路由器)将需要源mac地址,而不是那个。如果下一跳第一次见到你,它将使用你的IP地址和MAC地址相应地更新它的路由表。
如果下一跳无法解析目标IP地址或无法找到路径,它将决定丢弃该数据包并将通知您。但是如果它找到一个路径并转发数据包,那么它将在源MAC地址字段替换它自己的MAC地址。但在这种情况下,源IP地址保持不变。 (如果是代理,它也会改变。)