我有一个小型微控制器设备,我使用 Python 通过 USB 对其进行编程。该设备有一个以太网连接,可以使用 DHCP 或通过 USB 手动设置 IP/子网进行配置。该设备使用一个非常简单的非托管交换机连接到我的本地 LAN。
我的理解是,为了使 UDP 多播正常工作,设备需要设置其 IP,即使它只是在监听多播组/端口。这似乎违反直觉。
UDP 客户端是否有办法无需设置自己的 IP 即可监听多播组/端口?
或者,有没有办法在设置 IP 之前通过以太网与设备通信?
答案1
多播是一种广播协议,它不需要目标 IP 地址,只需要端口号,就可以传送到所有计算机。
多播会向组中的每个成员发送相同的消息。组由多播地址标识。多播地址必须使用以下 IP 地址范围:
224.0.0.0
到239.255.255.255
。服务器将发送标有此地址的消息,客户端必须加入该组才能接收任何多播消息。此地址本身不是任何一台计算机通常可以使用的有效 IP,仅用作识别组的标签。