Alibaba Linux 开启或关闭 IPv6
在 Alibaba Cloud Linux(Alinux)中,开启或关闭 IPv6 功能可以通过多种方式实现,具体取决于用户的系统版本和需求。以下是详细的操作步骤:
1. 前提条件
- 确保选用的实例规格支持 IPv6。更多信息请参考实例规格族。
- 确保实例位于支持 IPv6 网段的地域,并已搭建 IPv6 专有网络。具体操作请参考搭建 IPv6 专有网络。
2. 开启 IPv6
2.1 暂时开启 IPv6
暂时开启 IPv6 后,实例一旦停止或重启,相关配置会失效。适用于临时测试场景。
-
远程连接 ECS 实例 使用密码或密钥认证登录 Linux 实例。具体操作请参考通过密码或密钥认证登录 Linux 实例。
-
修改网络配置文件 进入
/etc/systemd/network/目录,找到.network文件(例如50-dhcp.network)。运行以下命令:
按 i 进入编辑模式,将 [Network] 下的内容修改为:
修改完成后,按 Esc 键,输入 :wq 并回车保存退出。
- 启用 IPv6 运行以下命令启用 IPv6:
2.2 持久化开启 IPv6
持久化开启 IPv6 后,实例重启后配置仍然生效。
- 修改
/etc/sysctl.conf文件 使用以下命令编辑/etc/sysctl.conf文件:
按 i 进入编辑模式,删除或修改以下内容:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
修改为:
net.ipv6.conf.all.disable_ipv6 = 0
net.ipv6.conf.default.disable_ipv6 = 0
net.ipv6.conf.lo.disable_ipv6 = 0
修改完成后,按 Esc 键,输入 :wq 并回车保存退出。
- 验证配置文件差异
运行以下命令,检查
/etc/sysctl.conf文件与 initramfs 中的文件是否存在差异:
如果存在差异,运行以下命令重新生成 initramfs:
- 重启实例 重启实例以使配置生效:
- 验证 IPv6 是否开启 重启后,运行以下命令验证 IPv6 是否已开启:
如果网络配置信息中包含以下内容,则表示 IPv6 已开启:
3. 关闭 IPv6
3.1 暂时关闭 IPv6
暂时关闭 IPv6 后,实例一旦停止或重启,相关配置会失效。
- 关闭所有网络接口的 IPv6 运行以下命令:
- 关闭指定网络接口的 IPv6
如果只想关闭某个特定网络接口(如
eth0)的 IPv6,运行以下命令:
3.2 持久化关闭 IPv6
持久化关闭 IPv6 后,实例重启后配置仍然生效。
- 通过命令行参数持久化关闭 IPv6 运行以下命令之一:
或
- 参数
ipv6.disable_ipv6=1只关闭网络接口的 IPv6。 -
参数
ipv6.disable=1直接禁用了 IPv6 的内核模块。 -
通过修改
/etc/sysctl.conf文件持久化关闭 IPv6 编辑/etc/sysctl.conf文件,添加以下内容:
如果需要关闭指定网络接口,添加以下内容:
- 重启实例 重启实例以使配置生效:
- 验证 IPv6 是否关闭 重启后,运行以下命令验证 IPv6 是否已关闭:
如果网络配置信息中没有以下内容,则表示 IPv6 已关闭:
4. 支持多网卡配置
如果需要为多个网卡配置 IPv6 地址,可以按照以下步骤操作:
-
远程连接 ECS 实例 使用密码或密钥认证登录 Linux 实例。
-
复制网络配置文件 进入
/etc/systemd/network/目录,找到.network文件(例如10-eth0.network)。运行以下命令复制一个新的配置文件:
- 修改配置文件 修改新复制的文件,运行以下命令:
- 重启网络服务
重启
systemd-networkd服务以使配置生效:
注意事项
- 在修改网络配置时,请确保了解每一步操作的含义,避免因误操作导致网络不可用。
- 如果在操作过程中遇到问题,可以参考阿里云官方文档或联系技术支持。
Ref
https://help.aliyun.com/zh/alinux/support/enable-or-disable-ipv6