Как отключить IPv6 в Windows Subsystem для Linux?

Я пытался отключить 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 перезагружать /etc/sysctl.conf настройки - но это бросило ошибку:

sysctl: cannot stat /proc/sys/net/ipv6/conf/all/disable_ipv6: No such file or directory

Я пытался также отключить его путем изменения конфигурации личинки /etc/default/grub.d/50-cloudimg-settings.cfg кому:

GRUB_CMDLINE_LINUX_DEFAULT="ipv6.disable=1 console=tty1 console=ttyS0"

и затем выполненный sudo update-grub но нет никакой установленной личинки обновления:

sudo: update-grub: command not found

Таким образом, я не уверен, возможно ли даже обновить личинку, но факт, там определенная конфигурация, расположенная, там делает меня вещью, там.

Версия WSL:

Description:    Ubuntu 16.04.2 LTS
Release:        16.04
Codename:       xenial
3
задан 24 September 2017 в 11:55

2 ответа

Я отключил IPv6 в свойствах сетевого адаптера Windows, и это заботилось о проблеме для меня. Моя подсистема Ubuntu начала использовать IPv4 вместо этого.

  1. Панель управления> Сеть и Совместное использование Центра> Изменяет настройки адаптера
    или Win+R ncpa.cpl Войти
  2. На Вашем адаптере (например, Ethernet), щелкните правой кнопкой> Свойства
    или дважды щелкните> Свойства
    или Alt+Enter
    или измените настройки этого соединения
  3. Снимите флажок с версией 6 протокола Интернета (TCP/IPv6)
  4. Хорошо
  5. Повторитесь по мере необходимости для других адаптеров, как WiFi

Обратите внимание, что это отключит IPv6 для всего Windows (при использовании того адаптера), не просто WSL.

2
ответ дан 1 December 2019 в 16:54

Вместо полного отключения IPv6 вы можете указать Ubuntu предпочесть соединения IPv4 вместо IPv6 , отредактировав блоки приоритета в /etc/gai.conf .

Использование этого решения:

  • Вы можете получить доступ к серверам в Интернете с IPv4 и серверам IPv6 через NAT или маршрутизатор, который понимает только IPv4.
  • Используйте IPv4 и IPv6 в локальной сети.
  • Избегайте ошибок, например , установка гем-файлов с rubygems.org

Предпочтение IPv4 адресам IPV6

Изменение приоритетов в gai.conf каждый раз, когда программа вызывает getaddrinfo () для разрешения имен хостов Linux предпочтет адреса IPv4. Это очень полезно, когда вы пытаетесь связаться с сервером с адресами IPv4 и IPv6 с машины за NAT или маршрутизатором. Кроме того, вы можете использовать IPv6 локально.

  1. Отредактируйте /etc/gai.conf
$ sudo vi /etc/gai.conf
  1. Раскомментируйте последние строки. Убедитесь, что в файле есть следующие строки без комментариев.
#For sites which prefer IPv4 connections change the last line to
precedence ::ffff:0:0/96 100
...
#    For sites which use site-local IPv4 addresses behind NAT there is
#    the problem that even if IPv4 addresses are preferred they do not
#    have the same scope and are therefore not sorted first.  To change
#    this use only these rules:
#
scopev4 ::ffff:169.254.0.0/112  2
scopev4 ::ffff:127.0.0.0/104    2
scopev4 ::ffff:0.0.0.0/96       14
6
ответ дан 2 January 2020 в 21:05

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

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