IPv6是最新的互联网协议,负责为网络设备提供标识和定位,并在互联网上路由流量。它于 1998 年开发,旨在替代早期的 IPv4 协议。IPv6 通过 128 位地址为每个设备分配全球唯一的地址,而 IPv4 仅使用 32 位地址。

Ubuntu系统怎么禁用 IPv6 协议? ubuntu关闭ipv6的三种方法-编程知识网

尽管 IPv6 的目标是完全取代 IPv4,但目前仍存在一些问题:

  • 根据 Google 的实时数据,截至 2024 年 8 月,全球仅有不到 45% 的网站支持 IPv6 连接。
  • 虽然大多数主要 ISP 现在都支持 IPv6,但支持程度可能因地区和服务商而异。
  • 你需要像配置 IPv4 那样仔细调整 IPv6 设置,仅依赖基本网络规则可能还不够,但这可能会增加系统复杂性。
  • 有用户发现,在某些特定情况下,禁用 IPv6 能提高 Ubuntu 的 Wi-Fi 速度。

无论出于什么原因,你都可以使用以下几种方法在 Ubuntu 系统上禁用 IPv6,并在需要时重新启用。

注:IPv6 是未来互联网发展的趋势,非必要情况下不要随意禁用。

方法 1:通过 Sysctl 禁用 IPv6 协议(临时或永久)

1、在「终端」中输入以下命令,检查系统是否启用了 IPv6:

ip a

如果 IPv6 已启用,你会看到类似下图的 IPv6 地址信息(网络接口名称可能不同):

Ubuntu系统怎么禁用 IPv6 协议? ubuntu关闭ipv6的三种方法-编程知识网

示例输出:IPv6 地址

2、使用 sysctl 命令临时禁用 IPv6:

sudo sysctl -w net.ipv6.conf.all.disable_ipv6=1
sudo sysctl -w net.ipv6.conf.default.disable_ipv6=1
sudo sysctl -w net.ipv6.conf.lo.disable_ipv6=1

3、再次检查 IPv6 状态:

ip a

现在,你应该看不到 IPv6 地址了。

Ubuntu系统怎么禁用 IPv6 协议? ubuntu关闭ipv6的三种方法-编程知识网

示例输出:IPv6 已禁用的

这只是临时禁用 IPv6,系统重启后 IPv6 会再次启用。

4、要永久禁用 IPv6,需要编辑/etc/sysctl.conf配置文件:

sudo vim /etc/sysctl.conf

5、在文件末尾添加以下内容:

net.ipv6.conf.all.disable_ipv6=1
net.ipv6.conf.default.disable_ipv6=1
net.ipv6.conf.lo.disable_ipv6=1

6、保存后,执行以下命令让配置立即生效:

sudo sysctl -p

Ubuntu系统怎么禁用 IPv6 协议? ubuntu关闭ipv6的三种方法-编程知识网

编辑并刷新 sysctl.conf 配置

方法 2:通过 GRUB 永久禁用 IPv6 协议

另一种方法是通过配置 GRUB,在启动时传递内核参数来禁用 IPv6:

1、编辑/etc/default/grub文件:

sudo vim /etc/default/grub

2、修改GRUB_CMDLINE_LINUX_DEFAULTGRUB_CMDLINE_LINUX

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash ipv6.disable=1"
GRUB_CMDLINE_LINUX="ipv6.disable=1"

Ubuntu系统怎么禁用 IPv6 协议? ubuntu关闭ipv6的三种方法-编程知识网

编辑 grub 文件以禁用 IPv6

3、保存文件后,更新 GRUB:

sudo update-grub

Ubuntu系统怎么禁用 IPv6 协议? ubuntu关闭ipv6的三种方法-编程知识网

更新 grub 配置并重启系统

4、重启 Ubuntu 系统,让配置生效。

方法 3:通过 Network Manager 临时禁用 IPv6 协议

通过 Network Manager,可以基于设备来禁用 IPv6:

1、列出网络连接:

nmcli connection show

2、针对特定网络设备禁用 IPv6,以ens33为例:

nmcli device modify <DEVICE NAME> ipv6.method "disabled"

Ubuntu系统怎么禁用 IPv6 协议? ubuntu关闭ipv6的三种方法-编程知识网

通过 nmcli 命令禁用指定设备 IPv6

3、要恢复 IPv6,只需将命令中的disabled替换为auto即可。

你可以根据需求,在以上三种方法中灵活选择,以便在 Ubuntu 上轻松禁用 IPv6 协议。