具有不同网络掩码的 2 台主机可以相互对话吗?

Can 2 hosts with different netmask dialogue each to other?

主机A:192.168.0.200/16

主机B:192.168.1.1/24

问题A:A可以向B发送数据包吗? 问题B:B可以向A发送数据包吗?

解释一下为什么不,如果是这样的话

假设这些主机物理连接到 1 个交换机,显而易见的答案是 a->b 可能,b->a 不可能。

不过情况有点复杂。如果您使用 wireshark 对此进行测试,问题会立即显现。

主持人A将发起通讯。它会发出一个ARP数据包“谁有192.168.1.1?告诉192.168.0.200”。所以主机 B 会说:“嘿,那是我,嗯,我不在那个网络上”这有点取决于主机 B 的 IP 堆栈,但通常不会向主机 A 发送 ARP 回复。由于主机 A没有得到对其 ARP 请求的答复,它将假定主机 B 不可访问。

B 发现主机 A 不在其子网中。因此,B会将数据包发送给网关,此处不做赘述。