在Node.js

时间:2017-10-13 08:48:00

标签: javascript node.js linux networking udp

我发送广播到零网络[255.255.255.255](例如DHCP或任何其他特定协议,不能使用任何特定广播地址,仅限于本地)并从特定接口发送广播得到回应。 因此作为dgram回调的Bind()的一部分,我试图将我的本地IP添加到这个广播组

socket.setMulticastTTL(128);
socket.setBroadcast(true);
socket.addMembership(BROAD_ADDRESS,ip);
socket.setMulticastLoopback(true);

并收到错误。

  

抛出errnoException(错误,' addMembership');     ^

     

错误:addMembership EINVAL

我认为,由于这是本地地址,因此它已经是零网络组的一部分(就像在Windows中一样)。但问题是,如果不使用addMembership调用,我可以看到响应流量进入接口,但NodeJS客户端无法接收它。

一切正常(我能够在使用任何其他广播地址时发送消息并获得响应),但不是这个特定的广播地址。 这也不适用于网络特定地址(例如10.1.10.0/24网络,广播到10.1.10.255)

那么,如何在linux上接收广播消息到零网络的响应?

0 个答案:

没有答案