如何在 Ubuntu Linux 上禁用 IPv6

想知道怎样在 Ubuntu 上禁用 IPv6 吗?我会在这篇文章中介绍一些方法,以及为什么你应该考虑这一选择;以防改变主意,我也会提到如何启用,或者说重新启用 IPv6

什么是 IPv6?为什么会想要禁用它?

互联网协议第 6 版Internet Protocol version 6(IPv6)是互联网协议(IP)的最新版本。互联网协议是一种通信协议,它为网络上的计算机提供识别和定位系统,并在互联网上进行通信路由。IPv6 于 1998 年设计,以取代 IPv4 协议。

IPv6 意在提高安全性与性能的同时保证地址不被用尽;它可以在全球范围内为每台设备分配唯一的以 128 位比特存储的地址,而 IPv4 只使用了 32 位比特。

尽管 IPv6 的目标是取代 IPv4,但目前还有很长的路要走;互联网上只有不到 30% 的网站支持 IPv6(这里 是谷歌的统计),IPv6 有时也给 一些应用带来问题。

由于 IPv6 使用全球(唯一分配的)路由地址,以及(仍然)有互联网服务供应商Internet Service Provider(ISP)不提供 IPv6 支持的事实,IPv6 这一功能在提供全球服务的虚拟私人网络Virtual Private Network(科学)供应商的优先级列表中处于较低的位置,这样一来,他们就可以专注于对 科学 用户最重要的事情:安全。

不想让自己暴露在各种威胁之下可能是另一个让你想在系统上禁用 IPv6 的原因。虽然 IPv6 本身比 IPv4 更安全,但我所指的风险是另一种性质上的。如果你不实际使用 IPv6 及其功能,那么启用 IPv6 后,你会很容易受到各种攻击,因而为黑客提供另一种可能的利用工具。

同样,只配置基本的网络规则是不够的;你必须像对 IPv4 一样,对调整 IPv6 的配置给予同样的关注,这可能会是一件相当麻烦的事情(维护也是)。并且随着 IPv6 而来的将会是一套不同于 IPv4 的问题(鉴于这个协议的年龄,许多问题已经可以在网上找到了),这又会使你的系统多了一层复杂性。

据观察,在某些情况下,禁用 IPv6 有助于提高 Ubuntu 的 WiFi 速度。

在 Ubuntu 上禁用 IPv6 [高级用户]

在本节中,我会详述如何在 Ubuntu 上禁用 IPv6 协议,请打开终端(默认快捷键:CTRL+ALT+T),让我们开始吧!

注意:接下来大部分输入终端的命令都需要 root 权限(sudo)。

警告!

如果你是一个普通 Linux 桌面用户,并且偏好稳定的工作系统,请避开本教程,接下来的部分是为那些知道自己在做什么以及为什么要这么做的用户准备的。

1、使用 sysctl 禁用 IPv6

首先,可以执行以下命令来检查 IPv6 是否已经启用:

ip a

如果启用了,你应该会看到一个 IPv6 地址(网卡的名字可能会与图中有所不同)

在教程《在 Ubuntu 中重启网络》(LCTT 译注:其实这篇文章并没有提到使用 sysctl 的方法……)中,你已经见过 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

检查命令是否生效:

ip a

如果命令生效,你应该会发现 IPv6 的条目消失了:

然而这种方法只能临时禁用 IPv6,因此在下次系统启动的时候,IPv6 仍然会被启用。

(LCTT 译注:这里的临时禁用是指这次所做的改变直到此次关机之前都有效,因为相关的参数是存储在内存中的,可以改变值,但是在内存断电后就会丢失;这种意义上来讲,下文所述的两种方法都是临时的,只不过改变参数值的时机是在系统启动的早期,并且每次系统启动时都有应用而已。那么如何完成这种意义上的永久改变?答案是在编译内核的时候禁用相关功能,然后要后悔就只能重新编译内核了(悲)。)

一种让选项持续生效的方式是修改文件 /etc/sysctl.conf,在这里我用 vim 来编辑文件,不过你可以使用任何你想使用的编辑器,以及请确保你拥有管理员权限(用 sudo):

将下面这几行(和之前使用的参数相同)加入到文件中:

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

执行以下命令应用设置:

sudo sysctl -p

如果在重启之后 IPv6 仍然被启用了,而你还想继续这种方法的话,那么你必须(使用 root 权限)创建文件 /etc/rc.local 并加入以下内容:

#!/bin/bash
# /etc/rc.local

/etc/sysctl.d
/etc/init.d/procps restart

exit 0

接着使用 chmod 命令 来更改文件权限,使其可执行:

sudo chmod 755 /etc/rc.local

这会让系统(在启动的时候)从之前编辑过的 sysctl 配置文件中读取内核参数。

2、使用 GRUB 禁用 IPv6

另外一种方法是配置 GRUB,它会在系统启动时向内核传递参数。这样做需要编辑文件 /etc/default/grub(请确保拥有管理员权限)。

现在需要修改文件中分别以 GRUB_CMDLINE_LINUX_DEFAULT 和 GRUB_CMDLINE_LINUX 开头的两行来在启动时禁用 IPv6:

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

(LCTT 译注:这里是指在上述两行内增加参数 ipv6.disable=1,不同的系统中这两行的默认值可能有所不同。)

保存文件,然后执行命令:

sudo update-grub

(LCTT 译注:该命令用以更新 GRUB 的配置文件,在没有 update-grub 命令的系统中需要使用 sudo grub-mkconfig -o /boot/grub/grub.cfg )

设置会在重启后生效。

在 Ubuntu 上重新启用 IPv6

要想重新启用 IPv6,你需要撤销之前的所有修改。不过只是想临时启用 IPv6 的话,可以执行以下命令:

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

否则想要持续启用的话,看看是否修改过 /etc/sysctl.conf,可以删除掉之前增加的部分,也可以将它们改为以下值(两种方法等效):

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

然后应用设置(可选):

sudo sysctl -p

(LCTT 译注:这里可选的意思可能是如果之前临时启用了 IPv6 就没必要再重新加载配置文件了)

这样应该可以再次看到 IPv6 地址了:

另外,你也可以删除之前创建的文件 /etc/rc.local(可选):

sudo rm /etc/rc.local

如果修改了文件 /etc/default/grub,回去删掉你所增加的参数:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

然后更新 GRUB 配置文件:

sudo update-grub

尾声

在这篇文章中,我介绍了在 Linux 上禁用 IPv6 的方法,并简述了什么是 IPv6 以及可能想要禁用掉它的原因。

那么,这篇文章对你有用吗?你有禁用掉 IPv6 连接吗?让我们评论区见吧~


文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/220476.html<

(0)
运维的头像运维
上一篇2025-04-14 14:22
下一篇 2025-04-14 14:24

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注