• 欢迎访问伊栖物联网社区,聚焦物联网技术和解决方案QQ群:735553309
  • ,从传感器到片上嵌入式系统,无线接入,边缘计算,在这里您可以讨论一切
  • 参加最新的物联网研讨会报名
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏伊栖Eccee

Linux如何关闭IPV6支持

片上系统 Robin TU 2年前 (2022-04-23) 1378次浏览 0个评论

虽然IPV6是未来的趋势,许多Linux发行版默认也开启了IPV6的支持。但许多应用程序或服务并没有对IPV6进行充分测试,运营商对IPV6的支持也不尽人意,有时为了让系统更加可靠或是解决网络速度问题,需要关闭对ipv6的支持。这里以ubuntu为例来说明,其它发行版或嵌入式系统可以参考相应的办法。

一、使用sysctl来关闭ipv6

sysctl命令 被用于在内核运行时动态地修改内核的运行参数,可用的内核参数在目录/proc/sys中。要临时关闭IPV6支持,可以用下面命令:

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

操作完成可以用ip addr命令来验证ipv6是否已经关闭了。

上面做法只是临时,重启系统后就会失效,如果要永久禁用ipv6支持,就需要操作sysctl.conf配置文件。
在sysctl.conf配置文件的最后添加上

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

这种方法还要防止/etc/init.d/propcs 过早被调用,否则上面这些配置就可能没被启用,在rc.local的最后加上这两行:

/etc/init.d/procps restart
exit 0

值得注意的是,用sysctl除了可以关闭所有接口的ipv6支持外,还可以仅关闭指定的网络接口,只需在配置命令中指定接口名称,比如用 net.ipv6.conf.enp0s25.disable_ipv6=1 ,修改完后,用sudo sysctl -p或重启系统即可。

二、使用GRUB来禁用ipv6

对于使用GRUB启动器的Linux系统,还可以用它来关闭ipv6的支持,修改/etc/default/grub,找到下面这两个命令行

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

注意我们只需添加,如果原来有其它参数值可以保留原来的值,用空格和其它参数隔开即可。保存后,

sudo update-grub
sudo reboot

ECCEE版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Linux如何关闭IPV6支持
喜欢 (2)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址