- IPv6: включение и выключение
- Проверка наличия адресов IPv6
- Выключение IPv6
- Полное выключение стека IPv6 параметрами загрузчика GRUB2
- Отключение IPv6 параметрами ядра с сохранением стека IPv6
- Отключение настройки IPv6 сетевыми службами
- Динамическое управление настройками сети sysctl
- Включение IPv6
- Особенности настройки IPv6 для FreeIPA
- Как отключить IP версии 6 в Linux
- Отключение через ядро Linux
- Глобально (для всех интерфейсов)
- Для определенного интерфейса
IPv6: включение и выключение
Перед выполнением действий, описанных в этой статье, рекомендуется ознакомиться со статьей Настройка сетевых подключений в Astra Linux.
Следует помнить, что в настроенной по умолчанию системе (с включенной службой NetworkManager) к сетевым интерфейсам будут последовательно применены сначала настройки сетевой службы networking, а затем — настройки сетевой службы NetworkManager, которые перезаписывают настройки networking.
При этом в ОС, настроенной по умолчанию, служба NetworkManager обслуживает все сетевые интерфейсы, кроме интерфейса обратной петли («loopback», lo).
Данная статья применима к:
- Astra Linux Special Edition РУСБ.10015-01 и РУСБ.10015-10 (очередное обновление 1.7)
- Astra Linux Special Edition РУСБ.10015-37 (очередное обновление 7.7)
- Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6)
- Astra Linux Special Edition РУСБ.10015-16 исп. 1
- Astra Linux Special Edition РУСБ.10015-16 исп. 2 (кроме управления параметрами загрузки)
- Astra Linux Special Edition РУСБ.10265-01 (очередное обновление 8.1) (кроме управления параметрами загрузки)
- Astra Linux Common Edition 2.12
Управление параметрами загрузки в Astra Linux Special Edition РУСБ.10015-16 исп. 2 и Astra Linux Special Edition РУСБ.10265-01 (очередное обновление 8.1) см. статью Файл параметров загрузки /boot/boot.conf
Проверка наличия адресов IPv6
Проверить наличие адресов IPv6 у сетевых интерфейсов можно командой:
В версиях Astra Linux с установленными оперативными обновлениями IPv6 по умолчанию отключен на уровне службы networking.
См. файл /etc/sysctl.conf и файлы в каталоге /etc/sysctl.d/ (например, файл /etc/sysctl.d/999-astra.conf). Для отключения IPv6 в этих файлах указана строка net.ipv6.conf.all.disable_ipv6 = 1:
kernel.sysrq = 0
fs.suid_dumpable = 0
kernel.randomize_va_space = 2
net.ipv6.conf.all.disable_ipv6 = 1
Однако, адреса IPv6 у сетевых интерфейсов по умолчанию присутствуют. Это происходит потому, что работающая по умолчанию служба NetworkManager сама настраивает сетевые интерфейсы перезаписывая настройки, установленные ранее службой networking.
Выключение IPv6
Полное выключение стека IPv6 параметрами загрузчика GRUB2
Данный способ запрещает ядру загрузку модулей IPv6, и позволяет выключить IPv6 независимо от настроек служб NetworkManager и networking. Выключать протокол IPv6 таким способом НЕ РЕКОМЕНДУЕТСЯ, так как отсутствие модулей IPv6 может вызвать неработоспособность некоторых программ (Samba, Контроллер ЕПП FreeIPA в Astra Linux). При необходимости отключить IPv6 рекомендуется использовать выключение настройками сети (см. ниже).
В Astra Linux Special Edition РУСБ.10015-16 исп. 2 и в Astra Linux Special Edition РУСБ.10265-01 (очередное обновление 8.1) загрузчик GRUB2 не используется, а IPv6 выключается в файле /boot/boot.conf (параметр cmdline=»ipv6.disable=1″).
Для выключения IPv6 параметрами загрузки найти в файле /etc/default/grub строчку GRUB_CMDLINE_LINUX, добавить туда параметр «ipv6.disable=1», например
После внесения изменений в файл /etc/default/grub следует обновить конфигурацию загрузчика:
Конфигурация IPv6 указанная в параметрах службы networking (файлы /etc/sysctl.conf и /etc/sysctl.d/*.conf) и службы NetworkManager (/etc/NetworkManager/system-connections/*) при использовании этого способа не имеет значения, однако следует убедиться, что настройки конфигурации не содержат параметров, относящихся к IPv6 (например, параметр net.ipv6.conf.eth0.disable_ipv6 = 1 в файлах /etc/sysctl.conf и /etc/sysctl.d/*.conf). При наличии таких параметров их следует удалить или закомментировать, так как попытки обращения к несуществующему стеку IPv6 будут вызвать ошибки.
Отключение IPv6 параметрами ядра с сохранением стека IPv6
Для сохранения стека IPv6 следует внести изменения в параметр GRUB_CMDLINE_LINUX в файле /etc/default/grub, заменив в атрибуте » ipv6.disable » значение 1 на значение 0:
После внесения изменений в файл /etc/default/grub следует обновить конфигурацию загрузчика:
Отключение настройки IPv6 сетевыми службами
Отключение IPv6 настройкой параметров ядра сделано в ОС Astra Linux по умолчанию (см. выше файл /etc/sysctl.d/999-astra.conf), однако при наличии загруженного модуля ядра IPv6 служба NetworkManager по умолчанию сама назначает сетевым интерфейсам адреса IPv6. Чтобы этого не происходило следует выполнить одно из действий:
- Либо настроить все нужные параметры интерфейса в файле /etc/network/interfaces. Тогда параметры интерфейса будут задаваться службой networking, а служба NetworkManager будет игнорировать все интерфейсы, упомянутые в /etc/network/interfaces, и её можно даже отключить за ненадобностью:
- через графический интерфейс управления сетевыми интерфейсами в закладке «Параметры IPv6» выбрать метод «Игнорировать»
- из командной строки установить метод ignore:
nmcli con down «Проводное соединение 1»
nmcli con mod «Проводное соединение 1» ipv6.method ignore
nmcli con up «Проводное соединение 1»
Динамическое управление настройками сети sysctl
- Убедиться, что IPv6 не отключен в файле параметров загрузки:
- При использовании загрузчика grub2:
- Найти в файле /etc/default/grub строку параметров загрузчика GRUB_CMDLINE_LINUX и убедиться, что там не указан параметр «ipv6.disable=1», если такой параметр указан — убрать его или изменить значение параметра на 0
- Если файл был изменен, то обновить загрузчик:
Следует контролировать наличие модифицируемых параметров в файле /etc/sysctl.conf и файлах /etc/sysctl.d/*. Если один и тот же параметр указан несколько раз, то используется последнее указанное значение. В частности, значение указанное в /etc/sysctl.conf отменяет значения, указанные в файлах /etc/sysctl.d/*.
Можно также включать/отключать использование на отдельных сетевых интерфейсах, например, для интерфейса eth0 отключить, для интерфейса lo — включить:
Заданные указанным способом параметры будут автоматически применяться при перезагрузке ОС.
Включение IPv6
В Astra Linux Special Edition РУСБ.10015-16 исп. 2 и в Astra Linux Special Edition РУСБ.10265-01 (очередное обновление 8.1) IPv6 включается в файле /boot/boot.conf. Для включения IPv6 следует в файле /boot/boot.conf в строке cmdline=»ipv6.disable=1″ поменять на cmdline=»ipv6.disable=0″. Подробнее см.отдельную статью Файл параметров загрузки /boot/boot.conf .
Для включения протокола IPv6 следует:
- Убедиться, что IPv6 не отключен в файле параметров загрузки (файл /etc/default/grub или /boot/boot.conf). Для этого:
- В файле /etc/default/grub найти строку параметров загрузчика GRUB_CMDLINE_LINUX и убедиться, что там не указан параметр «ipv6.disable=1», если такой параметр указан — убрать его или заменить значение на 0;
- Для настройки параметров в файле /boot/boot.conf см. Файл параметров загрузки /boot/boot.conf
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1и, если таковые строки имеются, удалить их или закомментировать.
Особенности настройки IPv6 для FreeIPA
Независимо от используемой аппаратной платформы для успешной работы серверов (реплик) FreeIPA сетевой интерфейс обратной петли (loopback, lo) должен иметь адрес IPv6.
Чтобы назначить такой адрес следует:
- Разрешить использовать стек IPv6 при загрузке:
- Для платформ, использующих загрузчик grub2 разрешить использовать стек IPv6 в параметрах загрузчика, если он не был ранее разрешен и перезагрузить машину.;
- Для платформ, использующих /boot/boot.conf см. Файл параметров загрузки /boot/boot.conf;
# Astra sysctl config kernel.sysrq = 0
fs.suid_dumpable = 0
kernel.randomize_va_space = 2
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 0Если при этом каким-то другим сетевым интерфейсам назначены неиспользуемые адреса IPv6 (например, службой NetworkManager), то желательно их убрать, так как попытки их использовать могут замедлять работу FreeIPA.
Как отключить IP версии 6 в Linux
Обновлено: 16.05.2020 Опубликовано: 23.03.2019
IPv6 далеко не всегда может использоваться в системе. Более того, он может вызвать некоторые проблемы при обращении к локальной петле (127.0.0.1) — запросы могут пойти на адрес ::1, что может привести к тому, что некоторые приложения будут работать не корректно.
В данной инструкции используются универсальные методы, которые подойдут для различных систем, например, Ubuntu, CentOS, Debian, Red Hat и так далее.
Отключение через ядро Linux
Быстрее всего отключить IPv6 через настройку ядра. Это универсальный способ и он подойдет для многих дистрибутивов на базе Linux.
Глобально (для всех интерфейсов)
Создаем или открываем файл:
* 99-sysctl.conf является основным конфигурационным файлом, а 10-ipv6-privacy.conf в каталоге sysctl.d — дополнительным. Для удобства лучше использовать последний.
Добавляем следующие строки:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1Если вносили изменения в файл /etc/sysctl.d/99-sysctl.conf:
Если вносили изменения в файл /etc/sysctl.d/10-ipv6-privacy.conf:
sysctl -p /etc/sysctl.d/10-ipv6-privacy.conf
Проверяем — должны остаться только адреса IPv4:
Для определенного интерфейса
Если нужно отключить IPv6 только для одного интерфейса, например, для eth0, также открываем настройку ядра.
- При использовании загрузчика grub2: