Недавно я установил WSL Ubuntu 18.04 на свой компьютер с Windows, но, похоже, ничего не работает должным образом, потому что у меня нет доступа в Интернет .
Я попробовал несколько команд, и sudo apt update
говорит, что «Соединение не удалось», а ping google.com
буквально выполняет следующие действия, как вы можете видеть на этом снимке экрана: https://i.stack.imgur.com/NXJNx.png
Я также проверил nano/etc/resolv.conf
и убедился, что серверы имен правы, полностью отключил Касперский и его брандмауэр, отключил Hyper-V, несколько раз переустановил WSL и даже отключил Защитник Windows. Ничего не помогло.
Итак, есть ли у вас идеи, в чем может быть проблема?
Откройте cmd Windows в режиме администратора и введите эти команды
- netsh winsock reset
- netsh int ip reset all
- netsh winhttp reset proxy
- ipconfig/flushdns
- reboot
https://github.com/microsoft/WSL/issues/3438#issuecomment-410518578 p>
У меня эта проблема возникает, когда я переключаюсь с одной сети на другую. Допустим, например, я работал в офисе Wi-Fi, а затем я пошел домой и начал использовать домашний Wi-Fi. Вышеупомянутый ответ https://stackoverflow.com/a/63578387/1409707 сработал для меня. Похоже, что это реальная проблема, поэтому, пока Windows не придумала решение, мне каждый раз приходилось искать более простой способ сделать это. Я скопировал команды и создал bat-файл, сохранив его на рабочем столе. Итак, каждый раз, когда я переключаю соединение/сеть Wi-Fi, я запускаю bat-файл от имени администратора и перезапускаю систему. Надеюсь, это поможет кому-то, кто пытается понять, почему это происходит, и как узнать простой способ исправить это, хотя (не постоянный).
создать новый файл .bat со следующим содержимым.
Я назвал свой файл networkreset.bat
wsl --shutdownnetsh winsock resetnetsh int ip reset allnetsh winhttp reset proxyipconfig/flushdnsnetsh winsock Resetshutdown/r
каждый раз, когда вы переключаете Wi-Fi/сеть, запускайте сценарий от имени администратора и перезапускайте.
После перезапуска Интернет работает на WSL в подключенной сети.
У меня эта проблема возникает, когда я переключаюсь с одной сети на другую. Скажем, например, я работал в офисе Wi-Fi, а затем я пошел домой и начал использовать домашний Wi-Fi. Вышеупомянутый ответ https://stackoverflow.com/a/63578387/1409707 сработал для меня. Похоже, что это реальная проблема, поэтому, пока Windows не придумала решение, мне каждый раз приходилось искать более простой способ сделать это. Я скопировал команды и создал bat-файл, сохранив его на рабочем столе. Итак, каждый раз, когда я переключаю соединение/сеть Wi-Fi, я запускаю bat-файл от имени администратора и перезапускаю систему. Я надеюсь, что это поможет кому-то, кто пытается понять, почему это происходит, и как узнать простой способ исправить это, хотя (не постоянный).
создать новый файл .bat со следующим содержимым.
Я назвал свой файл networkreset.bat
wsl --shutdownnetsh winsock resetnetsh int ip reset allnetsh winhttp reset proxyipconfig/flushdnsnetsh winsock Resetshutdown/r
каждый раз, когда вы переключаете Wi-Fi/сеть, запускайте скрипт в качестве администратора и перезапустите.
После перезапуска Интернет работает на WSL в подключенной сети.
Копирование рецепта, который у меня сработал.
Использование WSL 2 в Windows 10.
Решение найдено по адресу https://github.com/microsoft/WSL/issues/5336#issuecomment-653881695
-
Откройте Powershell или Cmd от имени администратора
и запустите каждый из этих команд:wsl --shutdownnetsh winsock resetnetsh int ip reset allnetsh winhttp reset proxyipconfig/flushdns
-
Нажмите клавишу Windows,
введитеСброс сети
,
нажмите Enter.Вы должны увидеть это окно.
Нажмите «Сбросить сейчас». -
Перезагрузите Windows
Если вам повезет, WSL 2 теперь сможет sudo apt-get update && sudo apt-get upgrade
.
Странный крайний случай
Я по-прежнему не могу пинговать сайты, но Интернет, кажется, работает везде в WSL 2.
Например, ping stackoverflow.com de> (или пинг любого сайта)
приводит к «100% потере пакетов».
Однако curl --location stackoverflow.com -i
приводит к успешному ответу.
И sudo apt-get update && sudo apt-get upgrade
теперь работает.
Действия по устранению неполадок перед обнаружением вышеуказанного рецепта :
Не использовал WSL 2 несколько месяцев, пытался sudo apt update
из терминала дистрибутива Debian, когда я обнаружил, что мой Интернет не работает.
Потратил час на настройку моих WSL-файлов/etc/resolv.conf и/etc/wsl. conf и устранение ошибки автоконфигурации (https://github.com/microsoft/WSL/issues/3928). По-прежнему не работает.
Затем я нашел эту страницу. Пробовал размещенные направления. Не сработало.
Наконец-то нашел это опубликованное решение, и WSL 2 внезапно работает отлично.
У меня ушло несколько часов на поиск и устранение неисправности, надеюсь когда-нибудь это пригодится.
Копирование рецепта, который работал у меня.
Использование WSL 2 в Windows 10.
Решение найдено на https://github. com/microsoft/WSL/issues/5336 # issuecomment-653881695
-
Откройте Powershell или Cmd от имени администратора
и выполните каждую из этих команд:wsl --shutdownnetsh winsock resetnetsh int ip reset allnetsh winhttp reset proxyipconfig/flushdns
-
Нажмите клавишу Windows,
введитеСброс сети
,
нажмите Enter.Вы должны увидеть это окно.
Нажмите «Сбросить сейчас». -
Перезагрузите Windows
Если вам повезет, WSL 2 теперь сможет sudo apt-get update && sudo apt-get upgrade
.
Странный крайний случай
Для меня я все еще не могу для проверки связи с сайтами, но Интернет, похоже, работает везде в WSL 2.
Например, ping stackoverflow.com
(или проверка связи любого сайта)
приводит к «100% потере пакетов».
Каким образом когда-либо curl --location stackoverflow.com -i
приводит к успешному ответу.
И sudo apt-get update && sudo apt-get upgrade
теперь работает.
Действия по устранению неполадок перед обнаружением вышеуказанного рецепта :
Не использовал WSL 2 несколько месяцев, пытался sudo apt update
из терминала дистрибутива Debian, когда обнаружил, что мой интернет не работает.
Потратил час на настройку моих WSL/etc/resolv.conf и/etc/wsl.conf и устранение неполадок с автонастройкой (https://github.com/microsoft/WSL/issues/3928). По-прежнему не работает.
Затем я нашел эту страницу. Пробовал размещенные направления. Не сработало.
Наконец-то нашел это опубликованное решение, и WSL 2 внезапно работает отлично.
У меня ушло несколько часов на поиск и устранение неисправности, надеюсь когда-нибудь это пригодится.
У меня был установлен ufw на WSL2 с debian 10, после его удаления и перезапуск Windows сработал.
У меня был установлен ufw на WSL2 с debian 10, после его удаления и перезапуска Windows все заработало.
Для меня это была проблема со службой VPN (служба NordVPN), которая вызывает множество проблем. Просто остановите ее службу с services.msc .
Для меня это была проблема с сервисом VPN (сервис NordVPN), который вызывает множество проблем. . Просто остановите службу из services.msc ..
Вы можете решить эту проблему, просто набрав эту команду в своем терминале
-> sudo systemctl restart NetworkManager
Вы можете решить эту проблему, просто набрав эту команду в своем терминале
-> sudo systemctl перезапустить NetworkManager