前言
如果只需要临时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 static
address 2a03:1234:abcd:5678::114
netmask 64
gateway 2a03:1234:abcd:5678::1
然后重载:
systemctl restart networking
3.2 CentOS / AlmaLinux / RockyLinux(NetworkManager)
编辑:
nmcli con mod eth0 ipv6.method manual
nmcli 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 eth0
4. 配置 SLAAC 自动 IPv6
SLAAC = VPS 上网后自动从上游路由器获取 IPv6。
Debian / Ubuntu:
nano /etc/network/interfaces
加入:
iface eth0 inet6 auto
或 systemd-networkd:
[Network]
DHCP=no
IPv6AcceptRA=yes
重启:
systemctl restart systemd-networkd
5. 配置临时 IPv6(Privacy IPv6)
用于浏览网页时隐藏真实 IPv6。
Debian / Ubuntu
编辑:
nano /etc/sysctl.conf
添加两行:
net.ipv6.conf.all.use_tempaddr = 2
net.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/ipv6token
6.3 写入 Networkd 配置(推荐)
创建:
nano /etc/systemd/network/10-eth0.network
内容:
[Match]
Name=eth0
[Network]
DHCP=no
IPv6AcceptRA=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 → ::114
Token=00000000000000000000000000000ACG → ::acg
7. 验证 IPv6 是否生效
ip -6 addr
检查能否访问 IPv6:
ping6 ipv6.google.com
curl -6 https://ifconfig.co
curl -6 https://api64.ipify.org
如果能显示 IPv6 地址代表成功。
8. 常见问题(FAQ)
❓ 我可以自己创建任意 IPv6 吗?
✔️ 只要在你的 /64 网段内,你可以完全自定义:
-
自己的静态 IPv6:
::1~::ffff:ffff:ffff:ffff -
Token 从 0~2^64 自定义
例如:
2a03:1234:abcd:5678::114514
2a03: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 后缀