摘要
- RFC 919 规定主机字段全为 1 表示“所有主机”,并把 255.255.255.255 定义为不应转发的本地广播。
- RFC 922 在不改变 IP 数据报格式的情况下,把这一约定扩展到子网层级。
- RFC 1122 统一了发送端的全 1 形式,同时建议接收端识别旧的全 0 形式。
当一个目的地址不再只指向一台主机
最初的 IP 规范没有规定通用的广播方法。RFC 919 借用了本地链路已经具备的广播能力,为 IP 建立了一种多个主机都能识别的目的地址。
这种服务从未被定义为可靠的群体交付机制。广播可能丢失、乱序或重复,每个监听主机还要承担处理成本,因此不应随意使用。
全 1 如何表示“所有人”
互操作需要一个含义明确的主机号。RFC 919 选择了位全为 1 的值,因为它不太可能已经分配给真实主机。
255.255.255.255 表示连接物理网络上的所有主机,并且不得被路由器转发。相反,36.255.255.255 表示网络 36 上的所有主机;网关可以先把数据报送到该网络,再在最后一跳转换为链路广播。相同的位模式,其范围取决于它在地址层次中的位置。
全 0 仍可表示未指定地址或网络记法。标准选择了全 1 作为发送方向,但并未让使用全 0 的旧系统立即消失。
子网让含义继续分层
RFC 922 将广播解释扩展到网络、子网和主机字段,不修改 IP 数据报格式。根据哪些字段为全 1 以及当前使用的地址掩码,目的地址可以表示本地硬件网络、远端硬件网络、指定子网,或某个 IP 网络的全部子网。网关还必须避免在数据报进入的硬件网络上再次广播。
ARP 边界同样需要遵守这一约定。ARP 服务器不得回答目标为广播地址的请求,否则未能识别特殊目的地址的主机可能制造转发环路,并使重复广播急剧增加。
标准发送,宽容接收
RFC 1122 列出四种标准全 1 形式:受限广播 {-1,-1}、网络定向广播 {network,-1}、子网定向广播 {network,subnet,-1},以及所有子网定向广播 {network,-1,-1}。
主机必须识别这些形式,也应识别以全 0 替代 -1 的旧形式,其中包括 4.2BSD 衍生系统使用的形式。接口可以选择发送形式,但默认值应是标准的全 1 形式。
这是有意不对称的迁移策略:接收旧形式降低部署分歧的成本,发送新形式则逐步减少歧义。通过链路层广播地址发送时,IP 目的地址必须是合法的广播或多播地址;主机若通过链路层广播收到帧,而其 IP 目的地址既非广播也非多播,则应静默丢弃。
受限范围为何更稳健
RFC 1122 建议在连接网络中使用受限广播,因为它不依赖所有机器对网络号和掩码有相同理解。定向广播是否转发,仍由网关的性能和安全策略决定。
因此,历史并不是简单的“全 1 战胜全 0”。全 1 成为规范发送结果,全 0 则作为兼容性输入被保留。它们共同把链路能力转化为共享的 IPv4 地址契约,但没有保证可靠交付或强制转发。
资料来源
会员简报
档案背景详情
使用相应会员等级登录,即可解锁完整简报与来源注释。
仅限 Strategic Circle
Strategic Circle
所有读者均可浏览。加入并登录后可解锁档案简报。
加入 Strategic Circle仅限 Leadership Alliance
Leadership Alliance
符合条件的 IP 资产所有者和管理层可登录查看 Leadership Alliance 简报。
加入 Leadership Alliance
