3] Anpassen der WSL 2-Netzwerkkonfiguration
Internetverbindungsprobleme in WSL 2 können auch durch falsche oder unangemessene Netzwerkkonfigurationen verursacht werden. WSL 2 verwendet Virtualisierung, um das Linux-Betriebssystem in Windows 11 auszuführen, und erstellt automatisch eine virtuelle Netzwerkschnittstelle, die eine Verbindung mit Ihrem lokalen Netzwerk herstellt.
Diese virtuellen Netzwerkschnittstellen haben eine andere IP-Adresse als Ihre Windows 11-IP-Adresse und werden in der Regel vom DHCP-Dienst zugewiesen.
Manchmal kann diese WSL 2-Netzwerkkonfiguration jedoch Konflikte oder Probleme mit Ihrem lokalen Netzwerk verursachen, z. B.:
- Die IP-Adresse von WSL 2 kollidiert mit einer anderen IP-Adresse in Ihrem lokalen Netzwerk.
- Das Standardgateway oder der DNS-Server von WSL 2 stimmt nicht mit dem Standardgateway oder DNS-Server Ihres lokalen Netzwerks überein
- Die Windows-Firewall oder andere Sicherheitssoftware blockiert oder schränkt den WSL 2-Internetzugriff ein
Um dieses Problem zu lösen, können Sie versuchen, die WSL 2-Netzwerkkonfiguration an Ihre Anforderungen anzupassen. Es gibt zwei Möglichkeiten, dies zu tun, nämlich:
- Ändern Sie die WSL 2-Netzwerkeinstellungen global über /etc/wsl configuration file.conf
- Ändern Sie die WSL 2-Netzwerkeinstellungen speziell für jede Linux-Distribution über die /etc/resolv.conf-Konfigurationsdatei
Globales Ändern von WSL 2-Netzwerkeinstellungen
Auf diese Weise können Sie die WSL 2-Netzwerkeinstellungen global für alle Linux-Distributionen ändern, die Sie unter WSL 2 ausführen. Sie können mehrere Optionen festlegen, z. B.:
- generateHosts : Gibt an, ob /etc/ hosts-Dateien automatisch von WSL 2 erstellt werden oder nicht
- generateResolvConf : gibt an, ob die Datei /etc/resolv.conf automatisch von WSL 2 erstellt wird oder nicht
- network : Gibt bestimmte Netzwerkeinstellungen für die virtuelle WSL 2-Netzwerkschnittstelle an, z. B. IP-Adresse, Standardgateway und DNS-Server
Um die WSL 2-Netzwerkeinstellungen global zu ändern, müssen Sie die Konfigurationsdatei /etc/wsl.conf in der von Ihnen verwendeten Linux-Distribution erstellen oder bearbeiten. Diese Datei muss das folgende Format haben:
[network] generateHosts = <true|false> generateResolvConf = <true|false> address = <IP address> gateway = <IP address> nameserver = <IP address>
Sie können die oben genannten Werte nach Ihren Bedürfnissen ausfüllen. Wenn Sie z. B. einer virtuellen WSL 2-Netzwerkschnittstelle eine statische IP-Adresse zuweisen und dasselbe Standardgateway und denselben DNS-Server wie Windows 11 verwenden möchten, könnte Ihre /etc/wsl.conf-Konfigurationsdatei wie folgt aussehen:
[network] generateHosts = false generateResolvConf = false address = 192.168.1.100 gateway = 192.168.1.1 nameserver = 8.8.8.8
Nachdem Sie die Konfigurationsdatei /etc/wsl.conf erstellt oder bearbeitet haben, müssen Sie Ihre Linux-Distribution neu starten, damit die Änderungen wirksam werden. Sie können dies tun, indem Sie den folgenden Befehl in PowerShell als Administrator ausführen:
wsl --shutdown wsl -d <distro name>
Mit dem ersten Befehl werden alle Linux-Distributionen heruntergefahren, die unter WSL 2 ausgeführt werden, und mit dem zweiten Befehl wird die gewünschte Linux-Distribution erneut ausgeführt. Ersetzen Sie <distro name> durch den Namen der Linux-Distribution, die Sie verwenden, z. B. Ubuntu.
Versuchen Sie nach dem Neustart Ihrer Linux-Distribution erneut, zu überprüfen, ob Ihre Internetverbindung in WSL 2 normal ist. Wenn Sie weiterhin Probleme haben, fahren Sie mit der nächsten Methode fort.
Spezifisches Ändern der WSL 2-Netzwerkeinstellungen
Auf diese Weise können Sie WSL 2-Netzwerkeinstellungen speziell für jede Linux-Distribution ändern, die Sie unter WSL 2 ausführen. Sie können die DNS-Servereinstellungen festlegen, die von WSL 2 verwendet werden, um Domänennamen in IP-Adressen aufzulösen.
Um die WSL 2-Netzwerkeinstellungen speziell zu ändern, müssen Sie die Konfigurationsdatei /etc/resolv.conf in der von Ihnen verwendeten Linux-Distribution erstellen oder bearbeiten. Diese Datei muss das folgende Format haben:
nameserver <IP address>
Sie können den Wert <IP address> mit der IP-Adresse des gewünschten DNS-Servers eingeben. Wenn Sie beispielsweise die DNS-Server von Google verwenden möchten, könnte Ihre /etc/resolv.conf-Konfigurationsdatei wie folgt aussehen:
nameserver 8.8.8.8 nameserver 8.8.4.4
Sie können mehr als eine Zeile hinzufügen , nameserver wenn Sie mehr als einen DNS-Server verwenden möchten.
Nachdem Sie die Konfigurationsdatei /etc/resolv.conf erstellt oder bearbeitet haben, müssen Sie sicherstellen, dass diese Datei nicht automatisch von WSL 2 überschrieben wird. Sie können dies tun, indem Sie den folgenden Befehl in Ihrer Linux-Distribution ausführen:
sudo chattr +i /etc/resolv.conf
Mit diesem Befehl wird die Datei /etc/resolv.conf unänderbar gemacht oder von allen Benutzern, einschließlich WSL 2, gelöscht.
Nachdem Sie die WSL 2-Netzwerkeinstellungen speziell geändert haben, versuchen Sie erneut, zu überprüfen, ob Ihre Internetverbindung auf WSL 2 normal ist. Wenn Sie immer noch Probleme haben, fahren Sie mit der nächsten Lösung fort.