Linux配置IPv6需区分临时与永久生效:先确认IPv6已启用(cat /proc/sys/net/ipv6/conf/all/disable_ipv6返回0),再用ip -6 addr add临时配地址、ip -6 route add配路由;永久配置则按发行版选Netplan(Ubuntu/Debian)或ifcfg(RHEL系),并应用生效。

在Linux服务器或网络设备上手动设置IPv6地址,必须明确区分临时配置与永久生效两种路径——临时配置用于调试验证,永久配置则需匹配发行版的网络管理机制,否则重启后地址丢失将导致服务中断。
确认IPv6基础支持已启用
执行 cat /proc/sys/net/ipv6/conf/all/disable_ipv6,返回值为 【0】 才表示IPv6协议栈已启用;若为1,需先运行 sudo sysctl -w net.ipv6.conf.all.disable_ipv6=0 临时开启。
接着用 ip -6 addr show dev eth0 查看目标网卡是否已有链路本地地址(fe80::/10开头),没有则说明底层未激活,不能直接添加全局地址。
临时添加静态IPv6地址与路由
方法一:单条命令添加地址并启用
运行 sudo ip -6 addr add 2001:db8::100/64 dev eth0。这一步不检查该地址是否已被占用,【若冲突会导致通信异常且无提示】。
方法二:补全默认路由
添加网关:sudo ip -6 route add default via 2001:db8::1 dev eth0。注意此处的网关必须与所配地址在同一子网内,否则路由表虽写入但无法转发。
方法三:验证连通性
立即执行 ping6 -c 3 2001:4860:4860::8888。失败时优先检查是否漏配路由,而非重试地址添加——因为地址添加本身不依赖网关。
永久配置(按发行版选择)
第一步:判断系统使用的网络管理器
运行 ls /etc/netplan/,若存在 .yaml 文件,则为 Ubuntu/Debian 系(Netplan);若存在 /etc/sysconfig/network-scripts/ifcfg-*,则为 RHEL/CentOS/Rocky 系(ifcfg)。
第二步:Ubuntu/Debian(Netplan)
编辑 /etc/netplan/01-netcfg.yaml,在对应网卡段加入:
addresses: [2001:db8::100/64]gateway6: 2001:db8::1nameservers: addresses: [2001:4860:4860::8888, 2001:4860:4860::8844]
保存后执行 sudo netplan apply。这一步会重启整个网络堆栈,正在SSH连接可能中断。
第三步:RHEL系(ifcfg)
编辑 /etc/sysconfig/network-scripts/ifcfg-eth0,追加四行:
IPV6INIT=yesIPV6ADDR=2001:db8::100/64IPV6_DEFAULTGW=2001:db8::1IPV6_AUTOCONF=no
然后运行 sudo systemctl restart network 或 nmcli connection reload && nmcli connection up eth0(取决于是否启用 NetworkManager)。


















