1

我的问题是针对 C 语言的 Linux。

假设子网 /16 上的主机 A 正在发送广播 UDP 数据包。(即通过广播到 xxx.xxx.255.255)

子网掩码 /24 的子网中的主机 B 有没有办法接收该广播?

我在主机 B 上的测试程序在正确的端口上等待,但如果 A 发送到 xxx.xxx.255.255,则不会收到任何内容。但是在使用 xxx.xxx.xxx.255 时会这样。

此外,我有以下限制:1.我无法更改网络配置,2.在主机 A 上运行的旧程序也无法更改。

谢谢!

4

2 回答 2

1

不,听起来您的网络配置不正确。

您不能有重叠的网络。要么你有一个 /16 网络,并且/16 内的每个主机都255.255.0.0用作网络掩码;或者您已将其分解为较小的网络,在这种情况下,每个较小的网络都有自己的网络掩码和广播地址。

于 2011-04-14T04:33:35.103 回答
0

尝试广播到计算机所在的子网。xx?.255

例如

ip is 24.234.123.?
broadcast to 24.234.123.255

由于计算机被锁定到子网 /24,它只会被锁定到其范围内的 ip。

并且它的广播在它的范围内。

于 2011-04-14T02:30:22.020 回答