linux – / 64路由到我指定的IPv6地址?

前端之家收集整理的这篇文章主要介绍了linux – / 64路由到我指定的IPv6地址?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
所以我有一个 Linux服务器的vps提供程序,它在我们网站上的网络仪表板中说明:

2607:f840:0044:0022:0000:0000:0000:0000/64 is routed to this server (2607:f840:0:3f:0:0:0:eaa)

2607:f840:0:3f:0:0:0:eaa / 64是分配给eth0接口的地址,旁边是GLOBAL.

我对IPv6很了解.每个地址长128位,以十六进制形式写入,通过省略前导零或使用::一次缩短.我不明白是什么意思2607:f840:44:22 :: / 64’路由’到我的IPv6分配地址2607:f840:0:3f:0:0:0:eaa / 64.

所以我不能在2607中改变一个位:f840:0:3f:0:0:0:eaa但是我可以从2607中选择任何东西:f840:44:22:0000:0000:0000:0000到2607:f840 :44:22:FFFF:FFFF:FFFF:FFFF?这给了我2 ^ 64个可能的地址,但出于什么目的?

希望这个问题不是太模糊或偏离主题,谢谢你的洞察力.

解决方法

欢迎来到拥有比您所知道的更多IP地址的精彩世界. (并且对你的VPS提供商做得很好并为你分配一个/ 64而不是更小的东西,许多误入歧途的提供商似乎正在做…)

正如您可能已经猜到的那样,有一个目的是永远不会耗尽IP地址.或者至少不是a very long while ……

所以这就是它如何为你工作:

>分配给eth0接口的IP地址为2607:f840:0:3f :: eaa.这是在上游提供商的/ 64上.当数据包进入您的子网时,2607:f840:44:22 :: / 64,您的上游提供程序将它们路由到您的eth0接口.
>数据包到达时您所做的事情完全取决于您.由于您使用的是VPS,因此您可能不需要大量地址,因此您可以开始将它们从… :: 1分配给现有的eth0接口.

例如:

ip addr add 2607:f840:44:22::1/64 dev eth0
ip addr add 2607:f840:44:22::2/64 dev eth0
ip addr add 2607:f840:44:22::3/64 dev eth0
ip addr add 2607:f840:44:22::deca:fbad/64 dev eth0
ip addr add 2607:f840:44:22:Feed:face:dead:beef/64 dev eth0

如果您要将VPS进一步划分为容器(例如OpenVZ或LXC),则可以将/ 64路由到将为容器提供服务的网桥,并为容器分配地址.

另见密切相关的问题,How does IPv6 subnetting work and how does it differ from IPv4 subnetting?

猜你在找的Linux相关文章