你是否正在寻找一种在Ubuntu Linux机器上禁用IPv6连接的方法?在本文中,我将教你如何做到这一点,还介绍如何启用或重新启用IPv6,参考在Linux服务器上禁用IPv6的方法。
在Ubuntu上禁用IPv6[仅限高级用户] 下面我将介绍如何在Ubuntu计算机上禁用IPv6协议,打开一个终端(默认:CTRL+ALT+T),需要root权限(参考在Ubuntu系统上为用户授予和删除sudo权限的方法)。 1、使用Sysctl禁用IPv6 首先,可以检查是否启用了IPv6: ip a 如果启用了IPv6地址(你的网卡名称可能不同),应该会看到它:
要禁用IPv6,你只需输入3个命令: 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。 所以需要修改/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" 保存文件并运行: sudo update-grub 设置将在重新启动后有效。
在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 这个时候运行ip a命令应该可以再次看到IPv6地址:
你也可以删除/etc/rc.local: sudo rm /etc/rc.local 如果修改了/etc/default/grub中的内核参数,请继续并删除添加的选项: GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" GRUB_CMDLINE_LINUX="" 然后运行以下命令使更改生效: sudo update-grub
相关主题 |