WSL2 Brak dostępu do Internetu; Nie można rozpoznać adresu hosta
WSL2 nie może połączyć się z Internetem i znaleźć adresu hosta. Z tego powodu nie możemy uzyskać dostępu do żadnego serwera za pomocą WSL2, co w ogóle mija się z celem instalacji Linuksa. Dlatego w tym poście omówimy, co zrobić, gdy WSL2 wyświetla komunikat Brak dostępu do Internetu i nie jest w stanie rozpoznać adresu hosta.
Napraw WSL2 Brak dostępu do Internetu; Nie można rozpoznać adresu hosta
Jeśli WSL2 nie ma dostępu do Internetu i nie jest w stanie rozpoznać adresu hosta, postępuj zgodnie z poniższymi rozwiązaniami.
- Sprawdź swoje połączenie internetowe i przepustowość
- Uruchom narzędzie do rozwiązywania problemów z siecią i Internetem w systemie Windows
- Wyłącz WSL i zresetuj protokoły sieciowe
- Sprawdź nazwę hosta i plik hosta
- Sprawdź plik resolv.conf
Omówmy je szczegółowo.
1] Sprawdź swoje połączenie internetowe i przepustowość
Przede wszystkim musimy sprawdzić i upewnić się, że z Internetem nie dzieje się nic złego. Skorzystaj w tym celu z jednego z bezpłatnych testerów szybkości Internetu. Jeśli stwierdzisz, że przepustowość jest niska, wyłącz i wyłącz router, a jeśli to nie zadziała, skontaktuj się ze swoim dostawcą usług internetowych i poproś o rozwiązanie problemu.
2] Uruchom narzędzie do rozwiązywania problemów z siecią i Internetem w systemie Windows
Jeśli szybkość Internetu nie stanowi problemu, uruchom narzędzie do rozwiązywania problemów z siecią i Internetem w aplikacji Uzyskaj pomoc. Wykryje, co jest nie tak z Twoją siecią, a następnie zaproponuje rozwiązanie. Po rozwiązaniu problemu z siecią możesz spróbować WSL. Powinno teraz działać.
3] Wyłącz WSL i zresetuj protokoły sieciowe
Następnie musimy zamknąć podsystem Windows dla systemu Linux, a następnie zresetować protokoły sieciowe, które mogły być przyczyną tego problemu. Aby to zrobić, możesz uruchomić kolejno następujące polecenia w wierszu poleceń (jako administrator).
wsl --shutdown
netsh winsock reset
netsh int ip reset all
netsh winhttp reset proxy
ipconfig /flushdns
Po zakończeniu sprawdź, czy problem został rozwiązany.
4] Sprawdź nazwę hosta i plik hosta
Musimy upewnić się, że wpis dotyczący Twojego komputera jest wymieniony w pliku hosta wraz z domeną lokalną. Ale najpierw musimy sprawdzić nazwę maszyny. W tym celu otwórz Ustawienia i przejdź do System > Informacje.
Gdy znasz już nazwę komputera, otwórz Wiersz Poleceń i przejdź do WSL. Następnie uruchom następujące polecenie.
nano /etc/hostname
Wpisz nazwę swojej maszyny wielkimi literami, a konkretnie tę, którą otrzymaliśmy wcześniej. Następnie usuń wszelkie informacje inne niż nazwa komputera.
Teraz biegnij.
nano /etc/hosts
Plik hosts powinien zawierać dwa wiersze podobne do tych wymienionych poniżej.
127.0.0.1 localhost.localdomain localhost
127.0.1.1 DESKTOP-SOMETHING
Na koniec zapisz i wyjdź z pliku.
5] Sprawdź plik resolv.conf
System Windows automatycznie generuje plik resolv.conf, ale czasami z nieprawidłowym serwerem nazw. Musimy sprawdzić plik i upewnić się, że serwer nazw jest ustawiony na 8.8.8.8 , czyli publiczny DNS Google, z którego można korzystać bezpłatnie. Aby zrobić to samo, wykonaj kroki podane poniżej.
Przede wszystkim zlokalizuj plik, uruchamiając następujące polecenie.
sudo nano /etc/resolv.conf
Może pojawić się następujący wpis.
# This file was automatically generated by WSL. To stop automatic generation of this file, add the following entry to /etc/resolv.conf
# [network]
# generateResolvConf = false
nameserver xxx.xx.xx
Zaktualizuj wartość serwera nazw do 8.8.8.8 i zapisz plik. Następnie będziesz mógł połączyć się z Internetem. Aby zapobiec resetowaniu tego pliku przez WSL podczas otwierania przyszłych terminali, uruchom następujące polecenia, jeśli jesteś aktualnie podłączony do Internetu.
sudo rm /etc/resolv.conf
sudo bash -c 'echo "nameserver 8.8.8.8"> /etc/resolv.conf'
sudo bash -c 'echo "[network]"> /etc/wsl.conf'
sudo bash -c 'echo "generateResolvConf = false">> /etc/wsl.conf'
sudo chattr +i /etc/resolv.conf
Na koniec sprawdź, czy problem został rozwiązany.
Otóż to!
Jak rozwiązać problemy z Internetem WSL2?
Jeśli masz problemy z Internetem WSL2, przede wszystkim sprawdź, czy Twój komputer-host z systemem Windows ma prawidłowe połączenie z Internetem. możesz to zrobić za pomocą bezpłatnego testera szybkości Internetu. Jeśli nie ma problemu z siecią, uruchom ponownie komputer wraz z routerem. Jeśli nadal napotykasz ten sam problem, zapoznaj się z powyższym przewodnikiem.
Jak naprawić problem z rozpoznaniem hosta?
WSL może nie rozpoznać hosta, jeśli nazwa hosta nie jest zaktualizowana lub jest niepoprawna w pliku /etc/hosts. Aby to naprawić, zaktualizuj nazwę hosta lub nazwę FQDN serwera archiwizacji w pliku /etc/hosts i zapisz zmiany. Po zaktualizowaniu pliku hosts spróbuj ponownie użyć polecenia sudo i powinno działać bez żadnych problemów.
Dodaj komentarz