谁能解释ipv6 地址的网络字节顺序和主机字节顺序的概念。
问问题
386 次
1 回答
1
在 IPv6 中,实际上没有区别。
以下假设在 Linux 和 Windows 上使用 C:
在 IPv4 中,地址存储为无符号 32 位整数,因此受系统字节序的影响。因此,它必须先转换为网络字节顺序,然后才能在线发送。
但是 IPv6 地址存储在一个sockaddr_in6
结构中,在一个字段in6_addr
中,该字段也是一个包含 16 个无符号 8 位字符数组的结构。
因此,由于 IPv6 地址始终有效地按网络字节顺序排列,因此在处理 IPv6 地址时无需进行任何字节顺序转换,例如从getaddrinfo()
. 您可以简单地将in6_addr
结构视为不透明数据。
于 2018-07-12T18:01:33.827 回答