Как отключить IPv6 в Ubuntu Linux

0 Акции
0
0
0
0

Введение

Протокол IP версии 6 (IPv6) — это последняя версия протокола IP. Этот протокол связи обеспечивает систему идентификации и определения местоположения компьютеров в сети и маршрутизацию трафика через Интернет. Он был разработан в 1998 году для замены протокола IPv4.

IPv6 призван повысить безопасность и производительность, одновременно гарантируя, что у нас не закончится адресное пространство. Он присваивает каждому устройству глобально уникальные адреса и хранит их в 128-битном формате, в то время как IPv4 использует только 32 бита.

Хотя цель состоит в замене IPv4 на IPv6, до полного решения проблемы еще далеко. Менее 30% сайтов в интернете предоставляют пользователям доступ к IPv6 (данные отслеживаются Google здесь). Кроме того, IPv6 может создавать проблемы для некоторых приложений.

Поскольку VPN-сервисы предоставляют услуги по всему миру, тот факт, что IPv6 использует глобально назначенные (уникально назначенные) маршрутные адреса, и что (пока) существуют интернет-провайдеры, которые не поддерживают IPv6, снижает приоритет этой функции для VPN-сервисов. Таким образом, они могут сосредоточиться на том, что наиболее важно для пользователей VPN: безопасности.

Ещё одна возможная причина отключения IPv6 в вашей системе — это нежелание подвергать себя различным угрозам. Хотя сам IPv6 более безопасен, чем IPv4, риски, о которых я говорю, носят иной характер. Если вы не используете IPv6 и его функции, включение IPv6 делает вас уязвимыми для различных атак и предоставляет хакерам ещё один инструмент для эксплуатации уязвимостей.

Однако настройки базовых сетевых правил недостаточно. К изменению конфигурации IPv6 нужно относиться с таким же вниманием, как и к IPv4. Это (и поддержание такой конфигурации) может быть непросто. С IPv6 связаны разные проблемы по сравнению с IPv4 (а их много, учитывая возраст протокола), что добавляет системе ещё один уровень сложности.

Также было замечено, что отключение IPv6 в некоторых случаях помогает улучшить скорость Wi-Fi в Ubuntu.

Отключение IPv6 в Ubuntu (только для опытных пользователей)

В этом разделе я объясню, как отключить протокол IPv6 на машине с Ubuntu. Откройте терминал (по умолчанию: CTRL+ALT+T) и приступим!

Примечание: Для большинства команд, которые вы будете вводить в терминале, вам потребуются права root (sudo).

Если вы являетесь обычным пользователем настольной версии Linux и предпочитаете стабильную операционную систему, пожалуйста, избегайте этого руководства. Оно предназначено для опытных пользователей, которые понимают, что делают и зачем.

1. Отключите IPv6 с помощью Sysctl.

Прежде всего, вам необходимо убедиться, что в вашей системе включен IPv6. Проверьте свой IP-адрес в Ubuntu с помощью этой команды:

ip a

Если активен IPv6-адрес, вы должны увидеть (имя вашей интернет-карты может отличаться):

Возможно, вы видели команду sysctl в руководстве по перезагрузке сети в Ubuntu. Мы будем использовать её и здесь. Чтобы отключить 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 для редактирования файла, но вы можете использовать любой редактор по своему усмотрению. Убедитесь, что у вас есть права root (используйте 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 по-прежнему включен, необходимо создать файл /etc/rc.local (с правами root).

⚠️ Содержимое файла отличается в более новых версиях Ubuntu.

Для Ubuntu 22.04 и более ранних версий используйте следующую строку в файле /etc/rc.local:

#!/bin/bash
# /etc/rc.local
/etc/sysctl.d
/etc/init.d/procps restart
exit 0

Для Ubuntu 24.04 и более новых версий используйте вместо этого следующее:

#!/bin/bash
# /etc/rc.local
/sbin/sysctl -p/etc/sysctl.conf
/etc/init.d/procps restart
exit 0

Теперь используйте команду `chmod`, чтобы сделать файл исполняемым:

sudo chmod 755 /etc/rc.local

Эта команда вручную (во время загрузки) считывает параметры ядра из файла конфигурации sysctl.

2. Отключите IPv6 с помощью GRUB.

Альтернативный метод — настроить 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"

Сохраните файл и выполните команду update-grub:

sudo update-grub

Теперь настройки должны сохраняться после перезагрузки.

Повторно включите IPv6 в Ubuntu.

Чтобы повторно включить 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

Вы снова должны увидеть IPv6-адрес:

При желании вы можете удалить файл /etc/rc.local:

sudo rm /etc/rc.local

Если вы изменили параметры ядра в файле /etc/default/grub, удалите добавленные параметры:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

Сделайте это прямо сейчас:

sudo update-grub

Результат

В этом руководстве я рассказал вам о способах отключения IPv6 в Linux, а также дал представление о том, что такое IPv6 и почему может возникнуть необходимость его отключения.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Вам также может понравиться