IPv6的使用
查看是否有 IPv6 地址
在终端中输入:
# macos
ifconfig | grep "inet6"
如果返回的是类似下方(这里的演示运营商是移动),那说明你是有 IPv6 公网地址的:
这些地址分为两类: 本地链路地址
和 全局地址
,它们的前缀和作用不同。
- 本地链路地址(Link-Local Address)
- 以 fe80:: 开头的地址是本地链路地址。这类地址仅在本地网络中有效,通常用于设备间的直接通信,无法通过互联网访问。
- 示例:fe80::1%lo0、fe80::10ff:1f4e:304e:c87f%en0。
- 全局单播地址(Global Unicast Address)
- 以 2409: 和 fc00: 开头的地址是全局单播地址。这类地址是互联网可达的,通常由你的 ISP 提供。
- 示例:2409:8a5c:5ee0:2d70:8f2f:53e7:c728:afa3、fc00:1234:ffff::10。
- 其中 fc00::/7 开头的地址(如 fc00:1234:ffff::10)属于ULA(独有本地地址),通常用于内部网络,不会通过公共互联网传播。
- 临时地址(Temporary Address)
- 有些 IPv6 地址标记为 temporary(临时),这些地址用于保护隐私,通常用于短期通信,会定期更换。
- 示例:2409:8a5c:5ee0:2d74:9c2b:e80b:b762:b470。
- 回环地址(Loopback Address)
- ::1 是 IPv6 的回环地址,相当于 IPv4 中的 127.0.0.1,用于在本机内部通信。
总结来看,上面返回的结果既有本地链路地址,也有全局地址,IPv6 配置是正常的。
在 macOS 的 IPv6 地址中, autoconf
和 secured
代表以下含义:
- autoconf:表示该地址是通过 SLAAC(无状态地址自动配置)自动分配的。使用 SLAAC 时,设备会自动生成 IPv6 地址,而不需要手动配置。
- secured:表示该地址启用了 隐私扩展,即启用了 RFC 7217 所规定的地址生成方法。这种方法通过随机数生成较为稳定的地址,使每次连接同一个网络时生成的地址相对一致,但在安全性上较传统 EUI-64 地址有所增强。
- 定期更换:带 temporary 标签的地址会定期更换,以增强隐私保护。而带 secured 的地址一般不会频繁更换,除非你重新连接网络或者网络发生变化。
如何使用 IPv6
假设你在本地通过8080端口搭建了一个服务,以往通过 IPv4 的访问方式都是使用 ipv4_addr:8080
直接访问,而使用 IPv6 不同,需要这样使用 [IPv6_addr]:8080
,就像下面这样: