我有12台“节点”嵌入式计算机,我希望从服务器计算机向其发送消息。我不知道他们的IP地址,他们也不知道我的IP地址。有什么方法可以通过本地网络“广播” tcp消息,以便他们都可以在某个端口上接收它?
到目前为止,我已经尝试了12个节点作为发布者和“服务器”作为订阅者的pub / sub连接。我听说您可以使用0.0.0.0侦听所有传入的IP地址,也可以使用*广播给任何要侦听的人。
#On the "server"
socket = context.socket(zmq.PUB)
socket.bind("tcp://*:{port}")
#On the "node"
socket = context.socket(zmq.SUB)
socket.connect("tcp://0.0.0.0:{port}")
当发布者和订阅者是同一台机器时,这非常适合测试,但是在不同的机器上执行时失败(永远不会收到消息)。我在这里做错了什么?可能与我的防火墙有关吗?
[如果有问题,我正在MacBook和Linux / ARM节点上使用python 2]