什么是IPv6的前缀长度
2019-12-22刘宏光
上一篇我们对IPv6地址的格式进行了一个基础讲解,但伴随在IP地址身边还有另外一个对象,他们俩都是成双成对出现的,那就是子网掩码。IPv4的子网掩码大家都不陌生,比如最常见的3个分别是:
255.255.255.0
255.255.0.0
255.0.0.0
再就是一些不常见的比如:
255.255.255.224
255.255.240.0
其他太多了,就不一一举例。但这实际表示什么意思呢?其实严格的说这个是位数长度,比如说255.255.255.0,如 果 你 转换为二进制,正好就是24个 连 续 的 1, 255.255.0.0是16个连续的1。这样我们多花点时间计算的话,255.255.255.224就是27个连续的 1,255.255.240.0 是20个连续的1。
可能有人会问,有没有255.255.123.0这样的掩码,那你就可以算一下255.255.123.0的二进制是:
11111111.11111111.1111011.0
由于数字1并不是连续的存在,因此就没有255.255.123.0这样的掩码。
根据以上IPv4的掩码推理,IPv6其实同样也适应,但因为IPv6真的实在太长了,所以我们就不再叫子网掩码,我们管他叫前缀长度。比如:
fec0:2019::1234/96 fec0:2019::1234:4321/96
这两个IP地址别看后面相差那么大,但因为前缀长度是96,并且前缀都是fec0:2019::,因此这2个IP就是同一个网段的,并且可以理解为这是96个1的“子网掩码”。
好了,最后再将上一篇和这一篇的内容总结下:
1.IPv6地址的二进制长度是IPv4的4倍。
2.我们要记住4这个数字,因为很多都和它是有关的。
3.IPv6可以将多个连续的0省略成::或者在一组里前面的0省略。
4.IPv4相同的网段用子网掩码表示(其实也是前缀长度),IPv6相同的网段用前缀长度表示。