如果这些 IP 地址的标准网络掩码为 255.255.255.0,那么您不需要路由表或默认网关,因为两台机器都在同一个网络中。
路由表基本上是一组关于如何到达另一个网络的方向。它说如果你想去12.34.56.78然后出去x网卡,然后去192.168.1.x(假设你在192.168.1.0网络上)
默认网络基本上说明您是否不在此网络上,并且没有更精确的路线,即上面的12.34.56.78。然后只需通过特定的网络地址。
本地网络通过广播工作,机器A将发送一个广播数据包到MAC(硬件)地址FF:FF:FF:FF:FF:FF,该数据包将被网络上的所有流量接受。 (没有被路由器隔开)。广播数据包基本上说“谁拥有 IP 地址 x.x.x.x”
当拥有该地址的机器收到该数据包时,它会回复说“我愿意”
然后机器 A 可以开始将数据包直接发送到该机器的 MAC 地址,并且机器可以回复发送它们的 MAC 地址。
从这里你可以理解为什么路由变得很重要,一旦你开始在网络上拥有大量的主机,网络就会因为大量的 ARP 请求而变得泛滥。通过将地址空间拆分为单独的地址块,您可以限制主机数量以及网络需要广播的 ARP 请求数量。
要了解这在较低级别是如何工作的,您需要了解如何使用 IP 地址和子网掩码来确定网络成员资格。在内部,IP 地址和网络掩码表示为二进制数。子网掩码将定义网络和子网之间的分割。 (它使用逻辑 AND 获取网络 ID)
Address: 11000000 10101000 00000010 00000010
Subnet Mask: 11111111 11111111 11111111 00000000
一旦获得网络 ID,它就可以将其与尝试发送的地址(使用相同的逻辑)进行比较,并确定如何处理它。
逻辑是这样的
如果数据包的网络 ID 与本地网络 ID 匹配,则直接发送,无需路由。
如果数据包的网络 ID 与路由表中的特定路由匹配。例如,如果数据包是 10.1.1.1,并且有 10.1.0.0/255.255.0.0 的路由,则将数据包转发到该路由条目中标记的路由。
如果数据包的网络 ID 与特定路由不匹配,并且指定了默认网关,则将其转发到那里。
如果没有特定路由,也没有默认网关,则返回失败的发送。
附:这非常简化,实际上还有其他细微差别!