【问题标题】:ACE how to enable IPv6ACE 如何启用 IPv6
【发布时间】:2012-02-20 10:19:22
【问题描述】:

我在 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

请帮帮我。

【问题讨论】:

    标签: c++ linux ipv6 ace


    【解决方案1】:

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

    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

    【讨论】:

    • 我在 ACE_INET_Addr() 中添加了 AF_INET6。但我的客户仍然给出错误 ACE_INET_Addr::ACE_INET_Addr: [::1] : operation not allowed
    • @smitajit 你能发布你的构造函数调用吗?
    • ACE_INET_Addr my_addr(5056,[::1],AF_INET6)。ACE::ipv6_enabled() 返回的值为0。
    • @smitajit ACE 是否已使用 ACE_HAS_IPV6 编译?
    • @smitajit 当您尝试 ping6 同一个地址时会发生什么?
    猜你喜欢
    • 2011-01-13
    • 2022-01-03
    • 2018-08-10
    • 1970-01-01
    • 2012-10-13
    • 1970-01-01
    • 1970-01-01
    • 2017-01-26
    • 1970-01-01
    相关资源
    最近更新 更多