IPv6 环回地址(相当于 127.xxx)

Doc*_*nes 22 ipv6 loopback

我设置了一个开发环境,其中有多个网站的单独环回地址。

例如,我有以下内容:

127.0.0.1 www.example.com
127.0.0.2 foo.example.com
127.0.0.3 bar.example.com
127.0.0.4 waffles.example.com
Run Code Online (Sandbox Code Playgroud)

我想要一个等效的 IPv6 解决方案。

我已经知道您可以使用 ::1 作为环回地址,但是 ::2、::3 等似乎不起作用。

IPv6 中还有其他环回地址吗?有没有办法拥有多个唯一的环回地址?

Ben*_*cks 14

从技术上讲,::2、::3 等是 ::0.0.0.0/96(“ipv4 兼容的 ipv6 地址”范围)的一部分。它已被弃用,但您可能不想使用该范围。

对于实验室环境,请使用唯一的本地寻址。转到https://www.ultratools.com/tools/rangeGenerator并为自己生成一个前缀。然后您可以从该前缀中选择您想要的任何地址,并将它们分配给环回接口。


kas*_*erd 11

我建议为此使用RFC 4193地址。fdRFC 4193 允许您通过采用字节值后跟 5 个随机字节来构建自己的 /48 供本地使用 。您可以在前 48 位之后放置您认为合适的任何内容,因此如果您想要 /64,您可以在后面跟上fd7 个随机字节,如 Linux 系统的示例所示:

ip -6 route add to local fd66:29e9:f422:8dfe::/64 dev lo
Run Code Online (Sandbox Code Playgroud)

与之前的答案相比,使用 RFC 4193 的优点是这样做不会违反任何 RFC,并且可以在没有接口标识符的情况下使用地址。

前面的答案中提到的每个范围要么使用为不同目的保留的范围,要么使用在使用时需要接口标识符的链路本地地址。

存在一个过期的草案,表明该范围1::/32已分配给您所要求的其他环回地址。然而,由于该草案几年前就过期了,并且从未进行过此类分配,因此您不能用于1::/32此用途。


小智 9

您的回送地址是 ::1/128。请注意子网的宽度,这将其限制为仅一台主机。将子网掩码更改为更宽的内容并检查您的路由表。或者使用链接本地地址。

  • 如果您在 windows 或 linux 中的一个或两个上添加了如何将额外的 IPv6 地址绑定到环回接口,这个答案会更好。在 IPv4 中,你得到 127.0.0.1/8,而在 IPv6 中你得到 ::1/128,那么有没有办法为 IPv6 添加更多? (2认同)