
Ich habe eine Neuinstallation von Windows 11 mit Ubuntu 20.04, das in WSL2 installiert ist.
Wenn ich versuche, ein Update durchzuführen sudo apt update
oder sogar ping google.com
bekomme ich
Vorübergehender Fehler beim Auflösen von „archive.ubuntu.com“
Und
Vorübergehender Fehler bei der Namensauflösung
Fehler bzw.
Ich habe es versucht:
Erlaubte WSL durch den Windows Firefall mit „App durch die Firewall zulassen“ und Auswahl
C:\Windows\System32\wsl.exe
Eingehende Regel in der Firewall für Port 3390 hinzugefügt
Netzwerkprofil auf „privat“ setzen (obwohl ich es lieber öffentlich lassen würde, wenn es eine Möglichkeit gibt, WSL am Laufen zu halten)
Ausführen
New-NetFirewallRule -DisplayName "WSL" -Direction Inbound -InterfaceAlias "vEthernet (WSL)" -Action Allow
einer Google-Suche
EDIT: An diesem Punkt habe ich jedes Google-Ergebnis ausprobiert und immer noch keine Lösung gefunden. r/windows11 lässt mich nicht posten, es sei denn, es ist Montag (dumm). Habe auch versucht, Ubuntu auf WSL neu zu installieren, aber ohne Erfolg.
Antwort1
Für dieses Problem gibt es mehrere Ursachen.
Der Artikel WSL2-Netzwerkprobleme und schneller Start von Win 10 empfiehlt, den Schnellstart in Windows zu deaktivieren:
Ein anderer
Erläuterung
ist, dass das Wechseln von Netzwerken (z. B. zwischen Arbeit und Zuhause) WSL verwirrt. Die Lösung besteht darin, eine Datei auszuführen .bat
, die Folgendes enthält:
wsl --shutdown
netsh winsock reset
netsh int ip reset all
netsh winhttp reset proxy
ipconfig /flushdns
netsh winsock reset
shutdown /r
Noch ein anderes
Erläuterung
ist, dass Windows automatisch eine resolv.conf
Datei mit einem falschen Nameserver generiert.
Um dies zu verhindern, führen Sie die folgenden Befehle aus:
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
Antwort2
Ich möchte nur alle daran erinnern, dass Win11 offenbar sehr pingelig ist, was den Administratorzugriff angeht, und beispielsweise sogar eine .bat-Datei auf C: ablegt.
Nachdem das gesagt ist, hat das Umschreiben von etc/resolv.conf auf 8.8.8.8 funktioniert, solange ich ALLES mit Administratorzugriff gemacht habe, einschließlich des Startens meiner WSL2 Kali CLI als Administrator über die Win11-Taskleiste.
Antwort3
Durch Hinzufügen dieser Einstellung zu Ihrer .wslconfig
Datei (in Ihrem Windows-Basisverzeichnis) sollte die Netzwerkunterstützung in den virtuellen WSL-Maschinen aktiviert werden:
[wsl2]
networkingMode=mirrored
WSL sollte nach der Änderung gestoppt werden, .wslconfig
damit die Änderungen wirksam werden: Verwendung wsl --shutdown
über eine Windows-Eingabeaufforderung. Dies ist eine relativ neue Funktion (Update vom September 2023), die Build 22H2 erfordert (ich habe es nur unter Windows 11 getestet, aber es funktioniert möglicherweise unter dem aktuellen Windows 10). Details und andere zugehörige Konfigurationseinstellungen hier:
https://learn.microsoft.com/en-us/windows/wsl/networking.
Um das neueste WSL2-Subsystem zu verwenden, wsl --update
ist möglicherweise die Ausführung erforderlich.
Unter älteren Windows-Versionen war die einzige Lösung, die ich zuverlässig verwenden konnte und die auch funktioniert, wenn unter Windows VPN läuft, die Verwendung von 'wsl-vpnkit' (https://github.com/sakai135/wsl-vpnkit).