问题描述
为什么禁用 IPv6 协议栈?因为很多配套的基础设置还未到位,因此使用 IPv6 会遇到很多问题,比如 a 5-second delay 问题。
该笔记将记录:在 Linux 中,如何禁用 IPv6 协议栈,以及相关问题处理。
解决方案
RHEL/CentOS
# sysctl -w net.ipv6.conf.all.disable_ipv6=1 # sysctl -w net.ipv6.conf.default.disable_ipv6=1 cat > /etc/sysctl.d/99-disable-ipv6.conf <<EOF net.ipv6.conf.all.disable_ipv6=1 net.ipv6.conf.default.disable_ipv6=1 net.ipv6.conf.default.disable_ipv6=1 EOF sysctl --load /etc/sysctl.d/99-disable-ipv6.conf
Ubuntu 18.04
在 Ubuntu 18.04 中,修改 sysctl 是无效的,因为 Netplan 会为其分配 Link-local 地址。解决方法:
方法一、彻底禁止 IPv6 协议栈
# vim /etc/default/grub ... GRUB_CMDLINE_LINUX_DEFAULT="ipv6.disable=1" GRUB_CMDLINE_LINUX="ipv6.disable=1" ... # update-grub
方法二、通过 Netplan 禁止
network: version: 2 ethernets: enp0s2: ... link-local: [] ...
我们不得不说,“回”字又多了一种写法 :-)
相关文章
「Linux」- 使用WPA Supplicant连接无线热点
「网络」- 关于TCPDUMP和IPTABLES的先后顺序
「网络」- 问题排查系列
「Linux」- 修改网卡接口名
在Linux下,修改网卡的MAC地址
「Network Analysis」
「Liunx」- 将网络接口连接到串行线路
参考文献
Disabling IPv6 in Ubuntu Server 18.04 - Ask Ubuntu
Disabling IPv6 on Ubuntu 18.04: The Netplan Version | P. S. Clarke
How to disable IPv6 address on Ubuntu 18.04 Bionic Beaver Linux - LinuxConfig.org
How to disable IPv6 on Linux
How to Disable IPv6 on Ubuntu Linux
IPv6 - ArchWiki
Link-local address - Wikipedia