721 字
4 分钟
VPS 添加 IPv6 超详细教程(含静态 IPv6、SLAAC、临时 IPv6)
前言
如果只需要临时IPv6地址,可以使用此教程添加ipv6。
1. IPv6 基础概念
如果你是第一次折腾 IPv6,这几个概念一定要搞清楚:
| 类型 | 说明 | 是否可自定义 |
| 静态 IPv6 | 上游给你一个固定 IPv6,如 2606:4700:1234:5678::2 | ✔️ 可自定义尾段 |
| SLAAC 自动 IPv6 | 由路由器自动分配,如 2606:4700:abcd:ef01:xxxx:xxxx:xxxx:xxxx | ❌ 不可控 |
| 临时 IPv6(Privacy IPv6) | 系统自动生成的随机 IPv6,用于保护隐私 | ❌ 默认不可控 |
| Stable Privacy IPv6(Token 自定义) | 可自定义 EUI64 或 Token,稳定又隐私 | ✔️ 可控、可长期使用 |
2. 检查 VPS 是否支持 IPv6
检查 IPv6 是否可用
ping6 ipv6.google.com查看接口是否分配了 IPv6
ip -6 addr如果没有 IPv6,则需要自己配置(见下文)。
3. 配置静态 IPv6(可自定义 IPv6)
你可以完全自定义你的 IPv6,比如
2a03:1234:abcd:5678::leu也就是:
2a03:1234:abcd:5678::1337、::666,::114等等。
只要尾段在 /64 内就可任意自定义。
3.1 Debian / Ubuntu
编辑:
nano /etc/network/interfaces添加:
iface eth0 inet6 staticaddress 2a03:1234:abcd:5678::114netmask 64gateway 2a03:1234:abcd:5678::1然后重载:
systemctl restart networking3.2 CentOS / AlmaLinux / RockyLinux(NetworkManager)
编辑:
nmcli con mod eth0 ipv6.method manualnmcli con mod eth0 ipv6.addresses "2a03:1234:abcd:5678::114/64"nmcli con mod eth0 ipv6.gateway "2a03:1234:abcd:5678::1"nmcli con up eth04. 配置 SLAAC 自动 IPv6
SLAAC = VPS 上网后自动从上游路由器获取 IPv6。
Debian / Ubuntu:
nano /etc/network/interfaces加入:
iface eth0 inet6 auto或 systemd-networkd:
[Network]DHCP=noIPv6AcceptRA=yes重启:
systemctl restart systemd-networkd5. 配置临时 IPv6(Privacy IPv6)
用于浏览网页时隐藏真实 IPv6。
Debian / Ubuntu
编辑:
nano /etc/sysctl.conf添加两行:
net.ipv6.conf.all.use_tempaddr = 2net.ipv6.conf.default.use_tempaddr = 2立即生效:
sysctl -p你会看到类似:
2606:4700:abcd:ef01:7d27:89ad:4323:a91c这就是临时 IPv6。
6. 自定义临时 IPv6(Stable Privacy + Token)
如果你想要:
- 临时 IPv6 但又不想随机变动
- 稳定、可预测
- 可以自定义后 64 位 Token(比如:
::abcd:114:514)
可以使用 stable_secret 功能。
6.1 设置稳定的 Token(可自定义)
查看你的网卡名
ip link假设为 eth0。
6.2 创建 Token
随便写一个 128-bit 十六进制,例如:
echo "f3a1c0ffee1234567890abcd19260811" > /etc/ipv6token6.3 写入 Networkd 配置(推荐)
创建:
nano /etc/systemd/network/10-eth0.network内容:
[Match]Name=eth0
[Network]DHCP=noIPv6AcceptRA=yes
[IPv6Token] Token=f3a1c0ffee1234567890abcd19260811重启:
systemctl restart systemd-networkd然后查看:
ip -6 addr show dev eth0你会看到一个稳定的隐私 IPv6,例如:
2606:4700:abcd:ef01:f3a1:c0ff:ee12:3456你也可以自定义它:
例:
Token=00000000000000000000000000000114 → ::114Token=00000000000000000000000000000ACG → ::acg7. 验证 IPv6 是否生效
ip -6 addr检查能否访问 IPv6:
ping6 ipv6.google.comcurl -6 https://ifconfig.cocurl -6 https://api64.ipify.org如果能显示 IPv6 地址代表成功。
8. 常见问题(FAQ)
❓ 我可以自己创建任意 IPv6 吗?
✔️ 只要在你的 /64 网段内,你可以完全自定义:
-
自己的静态 IPv6:
::1~::ffff:ffff:ffff:ffff -
Token 从 0~2^64 自定义
例如:
2a03:1234:abcd:5678::1145142a03:1234:abcd:5678::233❓ 有 IPv6 但 ping6 不通?
解决:
iptables -A INPUT -p ipv6-icmp -j ACCEPT❓ 系统有 IPv6 但 curl -6 出不来?
要加 NAT66 或开启路由器 RA,取决于你的上游。
结语
以上就是 VPS 添加 IPv6 的最完整教程,包含:
✔ 静态 IPv6(任意自定义)
✔ SLAAC 自动 IPv6
✔ 临时 IPv6(Privacy)
✔ 可控的 Stable IPv6 Token
✔ 自定义 IPv6 后缀
VPS 添加 IPv6 超详细教程(含静态 IPv6、SLAAC、临时 IPv6)
https://blog.leuxx.de/posts/25/