赞
踩
你是否正在寻找一种在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
相关主题
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。