我使用https://www.vultr.com/tools/subnet-calculator-ipv6/获取我的Linode VPS的“地址范围开始”和“地址范围结束”,然后将IP添加到/ etc / network /接口和一切都按预期工作。
然而,我现在有两个不同的Linode实例,即使我得到不同的IPv6 / 64 IP,当我使用子网ipv6计算器,我得到相同的开始范围和结束范围。 为什么发生这种情况? 如何获得我可以使用的IPv6 ips列表?
两个IP是
2600:3c03::f03c:91ff:fee5:1c9a / 64 2600:3c03::f03c:91ff:fe60:42fb / 64
您的IP地址由单个/ 64链路前缀和每个VM的MAC地址构成。 / 64看起来像在数据中心的所有Linode客户之间共享的。
这种结构只会给你每个虚拟机一个IP地址。 Linode有可能使用filter来阻止您在/ 64中使用任何其他地址,以防止欺骗其他客户的IP地址。
如果你需要更多的地址,从技术的angular度来看,最好的解决scheme就是将一个较短的前缀(从/ 48到60的范围内的某个地址)发送到虚拟机。
我没有在Linode网站上find很多细节,但我确实发现:
每个Linode从一个全局IPv6地址开始,可以免费添加额外的IPv6地址。
这两个地址是相同的/64前缀,所以有效的地址范围将完全相同: 2600:3c03::到2600:3c03::ffff:ffff:ffff:ffff 。
地址的前64位是networking。 在这种情况下,它是2600:3c03:: 。 有效地址范围全部为最后64位中的所有0。
这使您可以使用该networking中的18,446,744,073,709,551,616地址。
*与IPv4不同的是,IPv6不同于IPv4,它可以使用networking中的每个地址作为主机地址,包括networking地址,并且在IPv6中没有广播,所以没有广播地址,全零地址保留给路由器任意播地址,最后的127个地址被保留用于任播地址(参见RFC 2526,保留的IPv6子网任播地址 )。 任播地址是由多个主机共享的单播地址,因此IPv6networking中的所有地址都是有效的主机地址。