一、前期检查
- 确认内核已加载 IPv6 模块
lsmod | grep ipv6 # 如果没有输出,则加载模块: sudo modprobe ipv6
- 查看当前 IPv6 地址与路由如果仅见到
ip -6 addr show ip -6 route show
::1
或fe80::/64
链路本地地址,说明尚未配置全局单播地址。
二、临时添加(重启后失效)
假设,您的服务商已分配:
- IPv6 地址:
<IPV6_ADDR>/64
- 网关:
<GATEWAY>
- 网卡名称:
<IFACE>
(如 ens10、eth0)
# 1. 添加 IPv6 地址
sudo ip -6 addr add <IPV6_ADDR>/64 dev <IFACE>
# 2. 添加默认 IPv6 路由
sudo ip -6 route add default via <GATEWAY> dev <IFACE>
# 3. 验证
ip -6 addr show dev <IFACE>
ip -6 route show
完成上述后,可通过 ping6 ipv6.google.com
或 curl -6 https://ipv6.icanhazip.com
测试连通性与对外地址。
三、永久生效配置
3.1 Debian/Ubuntu(Netplan)
-
列出 Netplan 配置文件:
ls /etc/netplan/*.yaml
-
备份并编辑或新建配置文件
/etc/netplan/01-netcfg.yaml
:network: version: 2 renderer: networkd ethernets: <IFACE>: # IPv4 如果也有,可在此处添加 addresses: addresses: - <IPV6_ADDR>/64 gateway6: <GATEWAY> nameservers: addresses: [2001:4860:4860::8888, 2001:4860:4860::8844]
- 将
<IFACE>
,<IPV6_ADDR>
,<GATEWAY>
替换为实际值。 - 如果已有其它网卡配置,只需在对应接口下追加 IPv6 部分即可。
- 将
-
设置文件权限并应用:
sudo chmod 600 /etc/netplan/01-netcfg.yaml sudo chown root:root /etc/netplan/01-netcfg.yaml sudo net