Как отключить IPv6 постоянно?

Как мы можем отключить IPv6 в масштабе всей системы через терминальные команды?

Я считал редактирование/etc/modprobe.d/aliases и замену:

alias net-pf-10 ipv6

с:

alias net-pf-10 off
alias ipv6 off

Действительно ли это безопасно применить, и это постоянно отключает ipv6 через перезагрузки?

64
задан 24 June 2013 в 23:20

5 ответов

Если вы используете современную версию Ubuntu (я использую 16.04 LTS), вы можете использовать это удобное решение:

Create /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

Run service procps start

6
ответ дан 24 June 2013 в 23:20

Вот как проверить, включен ли 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 при загрузке.

8
ответ дан 24 June 2013 в 23:20

Если ваш компьютер не загружает /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
59
ответ дан 24 June 2013 в 23:20

Ответ Карвалью, включая комментарий о наличии для запуска sudo sysctl -P мне больше всего помогло.

Однако, по крайней мере, в моем случае:

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.<mydevice>.disable_ipv6 = 1

и кажется, что вторая строка была необходима.

Возможно, это связано с тот факт, что я использую TP-Link Archer T2U, для которого мне пришлось настраивать драйвер из исходных текстов.
Я предполагаю, что в результате не считается одним из « всех ».
Итак, в двух словах, если вы специально добавили (пользовательский) сетевой драйвер, net.ipv6.conf.all.disable_ipv6 = 1 может оказаться недостаточным для отключения сети IPv6.

Должен признать. хотя я не пробовал строку
net.ipv6.conf.default.disable_ipv6 = 1

8
ответ дан 24 June 2013 в 23:20

Я успешно отключил 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
80
ответ дан 24 June 2013 в 23:20

Другие вопросы по тегам:

Похожие вопросы: