【问题标题】:IPV6 connection to IPV4 TOS optionIPV6 连接到 IPV4 TOS 选项
【发布时间】:2017-06-05 11:16:14
【问题描述】:

你能帮帮我吗?

所以问题是连接到 IPV4 服务器时 IPV6 套接字上的 QOS

我无法在包裹上设置运输选项

self.socket = socket(PF_INET6, SOCK_DGRAM, 0); // Create UDP Socket
int on = 1;

setsockopt(self.socket, SOL_SOCKET, SO_NOSIGPIPE, (void *)&on, sizeof(int));

int off = 0;
        setsockopt(self.socket, IPPROTO_IPV6, IPV6_V6ONLY, (void *)(&off), sizeof(off)); // Disable IPV6 Only

int option = 46;
// set QOS option
setsockopt(self.socket, IPPROTO_IP, IP_TOS, (void *)(&option),sizeof(option));  // IPV4
setsockopt(self.socket, IPPROTO_IPV6, IPV6_TCLASS, (void *)(&option),sizeof(option)); //IPV6

但是当我看到 IPV4 DSCP 为 0 的包时

服务器向我发送正确的 DSCP

【问题讨论】:

    标签: ios sockets ipv6 qos


    【解决方案1】:

    您的内核似乎没有实现 IPv6 TCLASS 到 IPv4 DSCP 的映射。

    V6ONLY=0 选项主要是一种允许服务器在单个套接字上接受 IPv4 和 IPv6 连接的技巧。我对只实现最少的选项并不感到惊讶。

    您最好的选择可能是联系内核开发人员,看看他们是否要实现映射...

    【讨论】:

    • Tnx,这个IOS平台应用运行在iPhone上
    • 在这种情况下,内核开发人员是 Apple,祝您与他们取得联系...... :(
    猜你喜欢
    • 1970-01-01
    • 2012-04-11
    • 1970-01-01
    • 2012-10-24
    • 1970-01-01
    • 2010-12-09
    • 2019-11-28
    • 2014-04-10
    • 1970-01-01
    相关资源
    最近更新 更多