小编Mat*_*cht的帖子

如何为本地计算机上的 ZeroMQ REQ/REP 设置指定 IPv6 地址?

我无法让 zmq 服务器和客户端与 IPv6 进行通信,而它可以通过 C++ 轻松地与 IPv4 配合使用。

这是我的 ip a 显示的:

2: enp0s31f6: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 1c:1b:0d:0c:d7:bc brd ff:ff:ff:ff:ff:ff
inet 192.168.35.208/24 brd 192.168.35.255 scope global dynamic enp0s31f6
   valid_lft 7193sec preferred_lft 7193sec
inet6 fe80::fb7:c6df:9d3a:3d7b/64 scope link 
   valid_lft forever preferred_lft forever
Run Code Online (Sandbox Code Playgroud)

服务器:

zmq::context_t context(1);
zmq::socket_t server (context, ZMQ_REP);

server.setsockopt( ZMQ_IPV6, 1);

server.bind("tcp://*:5555%enp0s31f6");
Run Code Online (Sandbox Code Playgroud)

客户:

zmq::context_t context(1);
zmq::socket_t client (context, ZMQ_REQ);

client.setsockopt( ZMQ_IPV6, 1);

client.connect("tcp://[fe80::fb7:c6df:9d3a:3d7b]:5555%enp0s31f6");
Run Code Online (Sandbox Code Playgroud)

服务器等待监听,客户端发送消息,服务器永远不会收到它。IPv4 运行良好。

怎么了?

ipv6 zeromq

4
推荐指数
1
解决办法
1879
查看次数

标签 统计

ipv6 ×1

zeromq ×1