c++ - ACE 如何启用 IPv6

标签 c++ linux ipv6 ace

我在 Linux 中使用 ACE v5.7.1。 我想启用 ipv6 以便我的服务器也可以接受 ipv6 请求。我在 ace/config.h 文件中添加了#define ACE_HAS_IPV6。但是方法 ACE_ipv6_enabled() 的返回值仍然是 0

当我使用 ACE_INET_Addr(port,ipv6_address) 创建一个简单的客户端并尝试连接服务器时,它给出错误 ACE_INET_Addr::permission denied

请帮帮我。

最佳答案

您似乎为此使用了不正确的构造函数。看看这个链接:

http://www.dre.vanderbilt.edu/Doxygen/5.7.1/html/ace/a00246.html#0ef39cee9fc65be37ca6ce4092b6ea04

您需要像下面这样调用它:

ACE_INET_Addr(port, <hostname e.g. "localhost6">, AF_INET6);

默认情况下你有 AF_UNSPEC 这可能会假设 AF_INET

关于c++ - ACE 如何启用 IPv6,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9033089/

相关文章:

c++ - VMR9 是否支持原生 YUV 渲染?

c++ - 分析 DLL list 中的 CRT 依赖项

c++ - 快速信息集或 .net 二进制压缩开源库

c - 为逐跳扩展 header IPv6 指定新选项?

c++ - 为什么 std::lock 不支持超时?

regex - 使用 linux grep 查找电子邮件

windows - 我如何从 windows box 监视 linux 服务器的资源?

c - 瑞士星历库不会在 Ubuntu 上运行

mysql - 在 RDBMS (MySQL) 中存储 IPv4 和 IPv6

python - 使用 python 在 Windows XP 中创建 IPv6 套接字