如何在 IPV6 上对非半字节边界进行子网划分?

网络工程 ip 子网 IPv6 协议论 IP地址
2022-02-02 05:26:58

当我阅读这篇关于如何:计算半字节边界之外的 IPv6 子网的文章时,https://blog.apnic.net/2018/08/10/how-to-calculating-ipv6-subnets-outside-the-nibble-boundary /

作者以子网地址 2001:558::/31 为例。他计算 /32 和 /36 的子网?谁能解释他为什么选择 /32 和 /36 而不是计算 /31 ?

3个回答

所以,关键是给定一个/31前缀,如何从中获取子网,他的例子是 for /32and /36subnets。IPv6 的工作方式与 IPv4 相同,只是 IPv6 地址是 128 位,而 IPv4 地址是 32 位。

想想这个;当前的全局 IPv6 地址范围是2000::/3(非半字节边界),每个全局前缀都是其中的子网,通常分配为每个站点的/48前缀,为每个站点提供65,536标准/64网络。这意味着有2^4548每个前缀的位,减去3位前缀等于45位)或35,184,372,088,832标准/48站点的前缀。

您可以在任何位边界上打破前缀,但使用半字节边界更简单,并且 IPv6 有很多寻址方式可以做到这一点。当前分配的全局地址空间仅占整个 IPv6 地址空间的八分之一。

在大多数情况下,主机连接的 IPv6 子网将是/64网络,因为其他大小的网络会破坏某些 IPv6 功能。您真正关心的是小于/64子网划分到/64网络的前缀。

计算 IPv4 的子网在这里有一个很好的问答:如何计算前缀、网络、子网和主机号?`

IPv6 子网的工作方式与 Ron 已经指出的完全相同 - 始终记住 IP 地址实际上是 128 位 (IPv6) 或 32 位 (IPv4) 数字。唯一的区别是人类可读的表示法,它对 IPv4 使用点分十进制八位字节,对 IPv6 使用冒号分隔的十六进制 16 位字。

在半字节边界上拆分 IPv6 子网只会让我们人类更容易处理,就像在八位字节边界上拆分 IPv4 子网一样。机器不在乎。

使用反向 DNS 时,子网被限制在半字节边界上,因为这就是 arpa 区域的结构。