Как отключить IPv6 навсегда?
Как мы можем отключить всю систему IPv6 с помощью команд терминала?
Я прочитал редактирование /etc/modprobe.d/aliases и заменяю:
alias net-pf-10 ipv6
с:
alias net-pf-10 off
alias ipv6 off
Безопасно ли это применять и постоянно отключает ipv6 при перезагрузках?
6 ответов
Я успешно отключил IPv6, поместив следующие строки в /etc/sysctl.conf
:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
также запустите эту команду для загрузки изменений
sudo sysctl -p
Если ваш компьютер не загружает /etc/sysctl.conf во время загрузки (как для меня), необходимо отключить IPv6 от grub. Ядро Linux имеет параметр загрузки с именем "ipv6.disable=1", который отключает IPv6 от запуска.
Чтобы отредактировать параметры загрузки, отредактируйте "/ etc / default / grub" в любом текстовом редакторе от имени пользователя root:
sudo nano /etc/default/grub
Найдите строку, содержащую "GRUB_CMDLINE_LINUX_DEFAULT":
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
Добавьте "ipv6.disable=1" в параметр загрузки, затем сохраните файл grub:
GRUB_CMDLINE_LINUX_DEFAULT="ipv6.disable=1 quiet splash"
Наконец, обновите grub:
sudo update-grub
Ответ Карвалью, включая комментарий о необходимости бежать sudo sysctl -P
помог мне больше всего.
Тем не менее, в моем случае, по крайней мере:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.<mydevice>.disable_ipv6 = 1
и, похоже, вторая строка была необходима.
Возможно, это связано с тем, что я использую TP-Link Archer T2U, для которого мне пришлось настраивать драйвер из исходного кода.
Я предполагаю, что в результате <mydevice>
не считается одним изall
".
Итак, в двух словах, если вы специально добавили (настраиваемый) сетевой драйвер, net.ipv6.conf.all.disable_ipv6 = 1
может быть недостаточно для отключения сети IPv6.
Должен признать, однако, что я не пробовал линиюnet.ipv6.conf.default.disable_ipv6 = 1
Вот как проверить, включен ли ipv6 на вашем компьютере.
test -f /proc/net/if_inet6 && echo "Running kernel is IPv6 ready"
Если ты видишь
Running kernel is IPv6 ready
это включено.
Если вы не видите выхода, это не так.
Чтобы отключить ipv6, если другие ответы на этой странице не работают для вас, черный список ipv6 все вместе. Для этого используйте следующую команду:
echo 'blacklist ipv6' | sudo tee -a '/etc/modprobe.d/blacklist.local' >/dev/null
Также это может помочь:
echo 'install ipv6 /bin/true' | sudo tee -a '/etc/modprobe.d/blacklist.local' >/dev/null
Перезагрузитесь, чтобы изменения вступили в силу. Чтобы проверить, включен ли он после запуска, снова запустите эту команду:
test -f /proc/net/if_inet6 && echo "Running kernel is IPv6 ready"
Там не должно быть никакого выхода.
Нажмите здесь для получения информации о том, как отключить IPV6 при загрузке.
Если вы используете современную версию (я 16.04 LTS) Ubuntu, то вы можете использовать это решение:
Создайте /etc/sysctl.d/60-ipv6-disable.conf
содержащий следующий текст:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
Бежать service procps start
На Raspberry Pi под управлением Ubuntu добавьте
ipv6.disable=1
к
/boot/firmware/cmdline.txt
чтобы отключить IPv6 на уровне ядра.