Относительно IPv6 есть такой тезис «Включенный и ненастроенный протокол IPv6 хуже, чем выключенный протокол IPv6». Если использование IPv6 не планируется, то можно выключить поддержку IPv6 глобально на уровне системы.
Убедимся в том, что в системе действительно присутствуют IPv6 интерфейсы:
# ip addr | grep inet6
Также можно увидеть, что некоторые приложения имеют активные TCP-прослушиватели на интерфейсах IPv6. Посмотреть все прослушиваемые в системе порты можно командой:
# ss -lnptu | sort
Чтобы выключить поддержку IPv6 на всех сетевых интерфейсах сразу, открываем на редактирование файл sysctl.conf
# nano /etc/sysctl.conf
В конец файла добавляем строки:
# Turn off IPv6 # net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1 net.ipv6.conf.lo.disable_ipv6 = 1 net.ipv6.conf.eth0.disable_ipv6 = 1
Для выключения IPv6 на всех интерфейсах системы достаточно параметра net.ipv6.conf.all.disable_ipv6
. Прочие параметры указаны в качестве примера отключения на уровне отдельных интерфейсов. При этом, если необходимо, изменяем имя сетевого интерфейса eth0
на тот, который используется у нас.
Для вступления изменений в силу, заставим sysctl перечитать файл /etc/sysctl.conf
, после чего можно проверить результат':
# sysctl -p # ip addr | grep inet6
Проверено на следующих конфигурациях:
Версия ОС |
---|
Red Hat Enterprise Linux Server release 7.6 (Maipo) |
Red Hat Enterprise Linux Server release 7.9 (Maipo) |
Автор первичной редакции:
Алексей Максимов
Время публикации: 14.06.2023 08:53