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

4 января 2025 г.

IPv6 предлагает гораздо более масштабную схему адресации, чем IPv4, что является одной из многих причин, по которым он был разработан. Однако я видел редкие случаи, когда IPv6 вызывал сетевые проблемы.

Поскольку некоторое оборудование не использует преимущества IPv6 (а некоторые администраторы могут работать с IPv4), временное и простое решение — отключить IPv6. Протокол можно будет включить снова, когда проблема будет окончательно решена.

Если у вас есть оборудование, которое идеально реализует IPv6, и программное обеспечение, которое использует его правильно, это не проблема. Но если у вас возникли проблемы с сетью с серверами или настольными компьютерами Linux, и вы исчерпали все возможные области, вы можете попробовать отключить v6 сетевого протокола.

У меня было несколько случаев, когда связь между настольным компьютером Linux и старым маршрутизатором постоянно обрывалась, и отключение IPv6 было единственным решением, которое сработало. Через некоторое время я снова включал IPv6, чтобы посмотреть, решило ли обновление прошивки маршрутизатора (и обновление ОС настольного компьютера) проблему. В некоторых случаях это решало проблему, и IPv6 мог оставаться включенным, хотя в других случаях IPv6 приходилось снова отключать.

Я покажу вам, как отключить IPv6 на машине Linux. (Примечание: я рекомендую отключать IPv6 только тогда, когда вы исчерпали все другие варианты. Кроме того, вы должны рассматривать это как временное решение.)

СМ.: Основные команды, которые необходимо знать администраторам Linux (TechRepublic Premium)

Командная строка

Вы угадали: мы будем работать с командной строкой. Я покажу вам, как отключить IPv6 в дистрибутивах на базе Red Hat и Debian.

Вот как отключить протокол в системе на базе Red Hat:

    Откройте окно терминала. Измените пользователя на root. Введите команду sysctl -w net.ipv6.conf.all.disable_ipv6=1 Введите команду sysctl -w net.ipv6.conf.default.disable_ipv6=1

Чтобы повторно включить IPv6, выполните следующие команды:

sysctl -w net.ipv6.conf.all.disable_ipv6=0

sysctl -w net.ipv6.conf.default.disable_ipv6=0

Вот как отключить протокол на машине под управлением Debian.

    Откройте окно терминала. Введите команду sudo nano /etc/sysctl.conf Добавьте следующее в конец файла:

net.ipv6.conf.all.disable_ipv6 = 1

net.ipv6.conf.default.disable_ipv6 = 1

net.ipv6.conf.lo.disable_ipv6 = 1

    Сохраните и закройте файл. Перезагрузите машину.

Чтобы повторно включить IPv6, удалите указанные выше строки из /etc/sysctl.conf и перезагрузите компьютер.

СМ.: Как просмотреть ключи SSH в Linux, macOS и Windows (TechRepublic)

Предостережения

Если вы используете X Forwarding через ssh, отключение IPv6 может сломать эту систему. Чтобы исправить эту проблему, вы должны открыть файл /etc/ssh/sshd_config и изменить #AddressFamily any на AddressFamily inet. Сохраните этот файл и перезапустите sshd.

Если вы используете Postfix, вы можете столкнуться с проблемами при запуске службы. Чтобы исправить это, вам придется использовать IPv4 loopback. Откройте файл /etc/postfix/main.cf, закомментируйте строку localhost и добавьте IPv4 loopback следующим образом:

#inet_interfaces = локальный_хост

inet_interfaces = 127.0.0.1

СМ.: Как установить временные переменные среды в Linux (TechRepublic)

Несовершенное решение

Это не идеальное решение, но иногда нужно быть креативным в устранении неполадок. Если вы сталкиваетесь со странными сетевыми ошибками на серверах и настольных компьютерах Linux, попробуйте отключить IPv6, чтобы облегчить устранение неполадок или обеспечить временное исправление.

Первоначально статья была опубликована в июне 2016 года. Она была обновлена ​​Энтони Пейтоном в январе 2025 года.

Подпишитесь на рассылку Developer Insider От самых популярных языков программирования до комментариев по ОС Linux — получайте новости и советы от разработчиков и разработчиков с открытым исходным кодом, которые вам нужно знать. Доставка по вторникам и четвергам Адрес электронной почты Подписываясь на нашу рассылку, вы соглашаетесь с нашими Условиями использования и Политикой конфиденциальности. Вы можете отписаться в любое время. Подписаться
Подпишитесь на рассылку Developer Insider От самых популярных языков программирования до комментариев по ОС Linux — получайте новости и советы от разработчиков и разработчиков с открытым исходным кодом, которые вам нужно знать. Доставка по вторникам и четвергам Адрес электронной почты Подписываясь на нашу рассылку, вы соглашаетесь с нашими Условиями использования и Политикой конфиденциальности. Вы можете отписаться в любое время. Подписаться

Оригинал
PREVIOUS ARTICLE