从man 7 ipv6
,我们可以看到,IPv6地址在内部这样表示:为什么sin6_family需要IPv6地址?
struct sockaddr_in6 {
sa_family_t sin6_family; /* AF_INET6 */
in_port_t sin6_port; /* port number */
uint32_t sin6_flowinfo; /* IPv6 flow information */
struct in6_addr sin6_addr; /* IPv6 address */
uint32_t sin6_scope_id; /* Scope ID (new in 2.4) */
};
而且还认为:
sin6_family总是被设置为AF_INET6
为什么sin6_family
如果它总是一样的话,那么这是必需的吗?这是否意味着将IPv4转换为IPv6更简单,因为struct
的布局相似?