如何在Ubuntu,Linux Mint,Debian上禁用IPv6
创始人
2024-03-01 12:59:26
0

【编者注】都说IPv4地址枯竭了,要推广IPv6,但是迟迟不见动静,既然如此,在它完全就绪前,就不要让它来打扰我们的系统好了。

IPv6

IPv6是寻址方案IPv4的下一个版本,被用来给域名分配数字地址。

IPv6比IPv4支持更多的地址。然而,它还没有被广泛支持,还在被接受的过程中。

你的系统支持IPv6么?

为了支持IPv6,需要很多事情。首先你需要系统/操作系统支持IPv6。Ubuntu,Linux Mint,和大多是现代发行版都支持它。如果你看一下ifconfig指令的输出,你就会看见你的网络接口被分配了IPv6地址。

$ ifconfig
eth0      Link encap:Ethernet  HWaddr 00:1c:c0:f8:79:ee  
          inet addr:192.168.1.2  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::21c:c0ff:fef8:79ee/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:110880 errors:0 dropped:0 overruns:0 frame:0
          TX packets:111960 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:62289395 (62.2 MB)  TX bytes:25169458 (25.1 MB)
          Interrupt:20 Memory:e3200000-e3220000 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:45258 errors:0 dropped:0 overruns:0 frame:0
          TX packets:45258 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:4900560 (4.9 MB)  TX bytes:4900560 (4.9 MB)

看一下行“inet6 addr”。

接下来你需要一个支持ipv6的路由器/调制解调器。此外,你的ISP也必须支持IPv6。

除了检查网络设备的每一部分,最好查出你是否可以通过IPv6访问网站。

有很多网站可以检测你的网络连接是否支持IPv6. 这里就是个例子:http://testmyipv6.com/

下面是在内核中启用IPv6的参数:

$ sysctl net.ipv6.conf.all.disable_ipv6
net.ipv6.conf.all.disable_ipv6 = 0

$ sysctl net.ipv6.conf.default.disable_ipv6
net.ipv6.conf.default.disable_ipv6 = 0

$ sysctl net.ipv6.conf.lo.disable_ipv6
net.ipv6.conf.lo.disable_ipv6 = 0

同样可以在proc文件中检查

$ cat /proc/sys/net/ipv6/conf/all/disable_ipv6
0

注意这里的变量是控制IPv6的“禁用”。所以设置1就会禁用IPv6。

如果它不支持就禁用IPv6

如果你的网络设备中不支持IPv6,那最好就全部禁用它们。为什么?因为这会引起域名查询延迟,在网络连接中不必要地尝试连接到IPv6地址导致延迟等等问题。

我也遇到过像这样的问题,apt-get命令偶尔会尝试连接到IPv6地址失败接着检索IPv4地址。看一下下面的输出。

$ sudo apt-get update
Ign http://archive.canonical.com trusty InRelease
Ign http://archive.canonical.com raring InRelease                                                                                                    
Err http://archive.canonical.com trusty Release.gpg                                                                                                  
  Cannot initiate the connection to archive.canonical.com:80 (2001:67c:1360:8c01::1b). - connect (101: Network is unreachable) [IP: 2001:67c:1360:8c01::1b 80]
Err http://archive.canonical.com raring Release.gpg                                                                                                  
  Cannot initiate the connection to archive.canonical.com:80 (2001:67c:1360:8c01::1b). - connect (101: Network is unreachable) [IP: 2001:67c:1360:8c01::1b 80]

.....

像这样的错误在最近的Ubuntu中更频繁了,或许它比以前更频繁地尝试使用IPv6地址。

我在其他的应用上也注意到了相似的问题,如Hexchat,同样Google Chrome也会有时会在查询域名的时候花费更长的时间。

所以最好的方案是完全禁用IPv6来摆脱这些事情。这只需要一点点配置但可以帮助你解决很多你系统上的很多问题。用户甚至反应这可以加速网络。

禁用 IPv6 - 方案1

编辑文件 - /etc/sysctl.conf

$ sudo gedit /etc/sysctl.conf

在文件的最后加入下面的行。

# IPv6 disabled
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1

保存并关闭

重启sysctl

$ sudo sysctl -p

再次检查ifconfig的输出,这里应该没有IPv6地址了。

$ ifconfig
eth0      Link encap:Ethernet  HWaddr 08:00:27:5f:28:8b  
          inet addr:192.168.1.3  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1346 errors:0 dropped:0 overruns:0 frame:0
          TX packets:965 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:1501691 (1.5 MB)  TX bytes:104883 (104.8 KB)

如果不行,尝试重启系统并再次检查ifconfig

禁用 IPv6 - GRUB 方案

IPv6同样可以通过编辑grub配置文件禁用。

$ sudo gedit /etc/default/grub

查找包含"GRUBCMDLINELINUX"的行,并如下编辑:

GRUB_CMDLINE_LINUX="ipv6.disable=1"

同样可以加入名为"GRUBCMDLINELINUX_DEFAULT"的变量,这同样有用。保存并关闭文件,重新生成grub配置。

$ sudo update-grub2

重启,现在IPv6应该就已经禁用了。


via: http://www.binarytides.com/disable-ipv6-ubuntu/

译者:geekpi ,校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

相关内容

冲击IPO上市关口,智谱获...
智谱CEO张鹏 IPO上市辅导关口,国产AI大模型“六小虎”之一的...
2025-07-02 19:11:24
不去北上广 县城医院同样可...
IT时报记者 贾天荣 在癌症诊疗中,早发现、早诊断、早治疗至关重要...
2025-07-02 10:12:00
瑞金医院联合华为开源Rui...
6月30日,在由上海交通大学医学院附属瑞金医院(以下简称瑞金医院)...
2025-07-01 22:41:43
原创 ...
大模型扎堆上机,难掩体验鸡肋,小众深挖才是出路? AI大火第三年,...
2025-06-29 23:12:30
【IPO前哨】蓝色光标赴港...
A股上市的广告营销公司蓝色光标(300058.SZ),已向港交所提...
2025-06-27 22:14:06
券商IPO业务回暖:23家...
出品|搜狐财经 作者|汪梦婷 今年以来,券商投行IPO业务一改20...
2025-06-22 17:42:35

热门资讯

Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
使用 KRAWL 扫描 Kub... 用 KRAWL 脚本来识别 Kubernetes Pod 和容器中的错误。当你使用 Kubernet...
JStock:Linux 上不... 如果你在股票市场做投资,那么你可能非常清楚投资组合管理计划有多重要。管理投资组合的目标是依据你能承受...
通过 SaltStack 管理... 我在搜索Puppet的替代品时,偶然间碰到了Salt。我喜欢puppet,但是我又爱上Salt了:)...
Epic 游戏商店现在可在 S... 现在可以在 Steam Deck 上运行 Epic 游戏商店了,几乎无懈可击! 但是,它是非官方的。...
《Apex 英雄》正式可在 S... 《Apex 英雄》现已通过 Steam Deck 验证,这使其成为支持 Linux 的顶级多人游戏之...
如何在 Github 上创建一... 学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。你知道如何使用 git 了,你有一个 G...
2024 开年,LLUG 和你... Hi,Linuxer,2024 新年伊始,不知道你是否已经准备好迎接新的一年~ 2024 年,Lin...
什么是 KDE Connect... 什么是 KDE Connect?它的主要特性是什么?它应该如何安装?本文提供了基本的使用指南。科技日...
Opera 浏览器内置的 VP... 昨天我们报道过 Opera 浏览器内置了 VPN 服务,用户打开它可以防止他们的在线活动被窥视。不过...