我正在使用zeromq开发一个动态应用程序,其操作类似于upnp协议(自动配置和在起居室自动发现设备)。 要做到这一点,我使用zeromq来分发消息,我的问题是,当我在地址“169.254.1.0到169.254.254.255”上创建套接字和绑定时,我收到一条错误消息,如下所示: ZMQError:无法分配请求的地址。
我试图找出为什么通过本地地址(127.0.0.1)更改地址,这是有效的!! 问题在于我正在实施autoip,这意味着我倾向于使用169.254.1.0到169.254.254.255范围内的地址。
提前感谢您的帮助!
答案 0 :(得分:3)
启动界面后,您需要获取其IP地址,然后绑定它。或者,您可以绑定“*”,表示所有接口。
答案 1 :(得分:0)
我也得到了这个错误......我意识到我错误地想知道谁在PUB / SUB模型中与谁联系。
这很有效:主机A作为ZMQ PUB,可以轻松连接主机A作为ZMQ SUB。
然后我尝试将主机B设置为SUB,并让主机A“发送”到那个...并且我不断收到此错误。毕竟不需要告诉PUB在哪里发送数据?
没有!主机A作为PUB仍应绑定到IP_ANY(0.0.0.0);主机B作为SUB,必须配置主机A的地址。
一旦我完成了我的代码(并在我的脑海中),我就开始运行了。