使用网络广播地址是否意味着广播所有子网?例如,如果我的网络广播地址是 192.168.0.255 并且我有四个子网,那么使用网络广播发送消息是否会导致广播所有子网中的所有主机?
答案1
不可以。它只能到达包含此地址的一个子网。
目前还没有使用有类路由,因此主机或路由器才不是仅通过了解子网即可推断出父网络。因此,主机和路由器不知道(也不关心)您的“整个网络”是 /24,并且它们无法执行会影响整个 /24 的任何自动处理。
此外,更高级别的网络(超网)则没有有广播地址。即使路由器是配置为将整个 /24 网络转发到其他地方,“网关”路由不会触发任何广播处理;如果路由指向网关,则无论目标地址如何,数据包都会单播到该网关。
首先,只有直接分配给链路/接口(子网)的最低级网络才具有广播地址,并且广播仅在数据包到达其接近最终目的地(即子网分配给接口的路由器)时才起作用。在此之前,数据包不是广播数据包——以单播形式发送并以单播形式转发。
例如,如果您有一个只有一个路由器的简单网络,并且该路由器为您的 /26 子网配置了四个接口:
如果来自 192.168.0.192/26 的主机向 192.168.0.255 发送数据包,则该主机会将目标识别为“本地”,并识别出这是本地子网的广播地址,并将数据包作为第 2 层广播发送到以太网。任何收到该数据包的网关都不会进一步转发它。
如果来自 192.168.0.64/26 的主机向 192.168.0.255 发送数据包,则该主机不会将目标识别为“本地”,并将数据包作为第 2 层发送单播到网关。
网关将目的地识别为不同接口(192.168.0.192/26 接口)的“本地”,识别出它是该子网的广播地址,并仅通过该接口将数据包作为第 2 层广播发送。