在CentOS中配置IPv6,具体步骤取决于系统版本(CentOS 7使用network-scripts,CentOS 8/Stream推荐NetworkManager),以下是详细指南:

CentOS 7 配置IPv6
方法1:静态配置(推荐)
-
编辑网卡配置文件(以
ens33为例):vi /etc/sysconfig/network-scripts/ifcfg-ens33
-
添加或修改以下参数:
IPV6INIT=yes IPV6ADDR=你的IPv6地址/前缀长度 # 2001:db8::100/64 IPV6_DEFAULTGW=你的IPv6网关地址 # 2001:db8::1
示例:
IPV6INIT=yes IPV6ADDR=2001:db8::100/64 IPV6_DEFAULTGW=2001:db8::1
-
重启网络服务:
systemctl restart network
方法2:DHCPv6自动获取
在配置文件中添加:
IPV6INIT=yes DHCPV6C=yes IPV6_AUTOCONF=yes # 如果需要SLAAC无状态地址
CentOS 8/Stream 配置IPv6
方法1:使用nmcli(推荐)
-
设置静态IPv6:

nmcli connection modify ens33 ipv6.addresses "2001:db8::100/64" ipv6.gateway "2001:db8::1" ipv6.method manual
-
设置DHCPv6/SLAAC:
nmcli connection modify ens33 ipv6.method auto # 自动获取(DHCPv6+SLAAC)
-
应用配置:
nmcli connection down ens33 && nmcli connection up ens33
方法2:使用nmtui(文本图形工具)
- 运行命令:
nmtui
- 选择 “Edit a connection” → 选择网卡 → 在
IPv6 CONFIGURATION中配置地址或设为自动。
验证IPv6配置
-
检查IP地址:
ip -6 addr show dev ens33
输出应包含配置的IPv6地址。
-
测试连通性:
ping6 ipv6.google.com # 或 ping -6 目标地址
-
检查路由:

ip -6 route
确保默认网关(
default via ...)正确。
其他关键配置
-
禁用IPv6(若需要):
echo "net.ipv6.conf.all.disable_ipv6 = 1" >> /etc/sysctl.conf sysctl -p
-
防火墙放行IPv6:
firewall-cmd --add-rich-rule='rule family="ipv6" port port="80" protocol="tcp" accept' --permanent firewall-cmd --reload
-
DNS解析:
确保/etc/resolv.conf包含IPv6 DNS服务器,nameserver 2001:4860:4860::8888 # Google IPv6 DNS
常见问题解决
- 地址不生效:检查网络设备是否支持IPv6,或重启NetworkManager。
- 无法连接网关:确认网关地址正确且在同一子网。
- DNS解析失败:检查DNS服务器是否支持IPv6。
注意:
- 替换示例地址(
2001:db8::/32)为实际分配的地址。- 生产环境中建议使用静态配置确保稳定性。
- 云服务器需在控制台启用IPv6并分配地址。
图片来源于AI模型,如侵权请联系管理员。作者:酷小编,如若转载,请注明出处:https://www.kufanyun.com/ask/289852.html

