Как заставить WSL подключиться к Интернету при включенном VPN?

Как заставить WSL подключиться к Интернету при включенном VPN?

Я использовал VPN (частный доступ в Интернет) и Ubuntu WSL1 на Windows 10 без каких-либо проблем.

Затем я обновился до WSL2 Ubuntu 20.04. Я обнаружил, что WSL 2 сломал мою перезагрузку файлов, поэтому я понизил версию обратно до WSL1. Я также установил последнюю версию своего VPN в то время. (Я также установил последнюю версию VirtualBox (6.1.34), обнаружил, что она не работает, поэтому я переустановил версию 6.1.3.)

Теперь WSL1 Ubuntu не может подключиться к Интернету, когда включен мой VPN. Какие файлы и настройки мне нужно проверить, чтобы исправить это?

решение1

Ответ здесь:https://learn.microsoft.com/en-us/windows/wsl/troubleshooting#wsl-has-no-network-connectivity-once-connected-to-a-vpn

  1. Обратите внимание на DNS-сервер VPN, который вы используете.ipconfig.exe /all
  2. Сделайте копию существующего resolv.confsudo cp /etc/resolv.conf /etc/resolv.conf.new
  3. Удалить текущий resolv.confsudo unlink /etc/resolv.conf
  4. sudo mv /etc/resolv.conf.new /etc/resolv.conf
  5. Отредактируйте /etc/wsl.confи добавьте это содержимое в файл. (Более подробную информацию об этой настройке можно найти вРасширенные настройки конфигурации)
[network]
generateResolvConf=false
  1. Откройте /etc/resolv.conf и

    а) Удалите первую строку из файла, в которой есть комментарий, описывающий автоматическую генерацию.

    б. Добавьте запись DNS из (1) выше как самую первую запись в списке DNS-серверов. в. Закройте файл.

После того, как вы отключили VPN, вам придется отменить изменения в /etc/resolv.conf. Для этого выполните:

  1. cd /etc
  2. sudo mv resolv.conf resolv.conf.new
  3. sudo ln -s ../run/resolvconf/resolv.conf resolv.conf

решение2

Это может быть не ваша проблема, но после многочисленных попыток сделать что-то очень разное, это была моя проблема. У меня были эти экспериментальные настройки, и я использую OpenVPN. Я прокомментировал их в wl.conf, и все заработало.

#[experimental]
#networkingMode=mirrored
#dnsTunneling=true
#autoProxy=true

https://learn.microsoft.com/en-us/windows/wsl/troubleshooting#wsl-has-no-network-connectivity-once-connected-to-a-vpn

WSL connectivity issues with VPNs when Mirrored networking mode is on
Mirrored networking mode is currently an experimental setting in the WSL Configuration. The traditional NAT networking architecture of WSL can be updated to an entirely new networking mode called “Mirrored networking mode”. When the experimental networkingMode is set to mirrored, the network interfaces that you have on Windows are mirrored into Linux to improve compatibility. Learn more in the Command Line blog: WSL September 2023 update.

Some VPNs have been tested and confirmed to be incompatible with WSL, including:

"Bitdefender" version 26.0.2.1
"OpenVPN" version 2.6.501
"Mcafee Safe Connect" version 2.16.1.124

Связанный контент