0

我需要每台运行我的程序的计算机将它们的 IP 一遍又一遍地发送到多播,并且我需要每台运行的计算机能够构建运行该程序的可用主机列表。有没有办法在 C# 中使用 UDP 来做到这一点?

4

1 回答 1

0

你想要的是广播而不是多播。是的,这是可能的,您需要:

  • 将数据发送到广播地址,例如端口号上的 192.168.255.255。您的主机正在运行。这会将数据发送给连接到 192.168.xx 子网的每个人。(255.255.255.255 是有效的 - 发送给所有人 - 但这几乎总是被丢弃并且可能不起作用)。
  • 您不需要在广播中包含您的 IP,因为接收者可以看到他们从中接收数据的 IP 端点。

注意:防火墙、NAT 等通常会丢弃传入的未经请求的数据,除非明确告知允许/转发它。在 LAN 上,上述内容通常无需更改即可工作。

于 2013-10-01T01:01:37.930 回答