应先确保接口与连接名称一致,再用nmcli配置ipv6双栈:修改连接名与设备名一致(如nmcli con modify "cloud-init eth0" con-name eth0),然后设置ipv6.addresses、gateway、dns及method manual,启用autoconnect,最后down/up连接并验证。

确认接口与连接名称一致
运行 nmcli connection show 查看当前连接列表,确保目标网卡(如 eth0)对应的 CONNECTION 名称与其 DEVICE 名称一致。若显示为 “cloud-init eth0” 或其他非标准名,先执行:
nmcli connection modify "cloud-init eth0" con-name eth0
这能避免后续配置因名称不匹配而失效,尤其在系统重启后更稳定。
配置静态 IPv6 地址与网关
使用 nmcli connection modify 设置地址、前缀长度、网关和 DNS:
- 分配地址:nmcli connection modify eth0 ipv6.addresses "2001:db8::100/64"
- 设置网关:nmcli connection modify eth0 ipv6.gateway "2001:db8::1"
- 指定 DNS:nmcli connection modify eth0 ipv6.dns "2001:4860:4860::8888,2001:4860:4860::8844"
- 启用手动模式:nmcli connection modify eth0 ipv6.method manual
注意:IPv6 地址必须带前缀长度(如 /64),网关需是同一子网内的全局单播地址,链路本地地址(fe80::/10)不能用作默认网关。
启用双栈并确保 IPv4 同步配置
现代双栈部署要求 IPv4 和 IPv6 同时可用且策略统一:
Zynq‑7000 / Zynq UltraScale+ 硬件调试技能。适用于 Xilinx Zynq(Cortex‑A9/A53 + FPGA)Linux 环境,调试 I2C、I2S、UART、GPIO 等外设。包括设备树配置、内核驱动、用户空间调试工具、交叉编译和常见问题排查,支持 PetaLinux 开发。
- 若 IPv4 已设为 static,保持其 method=manual;若为 DHCP,可保留 ipv4.method auto
- 确保两个协议的 autoconnect 均启用:nmcli connection modify eth0 autoconnect yes
- 避免混用 auto 和 ignore:不要将 ipv4.method 设为 disabled 同时又启用 ipv6,否则 NetworkManager 可能跳过激活整个连接
双栈生效依赖于底层路由表是否同时包含 v4 和 v6 条目,可通过 ip -4 route show 和 ip -6 route show 分别验证。
应用配置并验证连通性
执行以下操作使更改落地:
- 关闭再启用连接:nmcli connection down eth0 && nmcli connection up eth0
- 检查地址是否就位:ip -6 addr show dev eth0,应看到 global scope 的静态地址(不含 “temporary” 标识)
- 测试基础连通:ping6 -c3 2001:db8::1(网关)、ping6 -c3 google.com(需 DNS 解析)
若 ping6 失败但地址已显示,优先排查防火墙(ip6tables 或 nftables)是否放行 ICMPv6,以及上游路由器是否通告了正确的 IPv6 路由。










