WSL - Workaround pour l'accès réseau WSL via un VPN
De PedroWiki
Aller à la navigationAller à la recherche
Introduction
WSL2, successeur de WSL1, permet de bénéficier d'un fonctionnement différent (exécution native des distributions Linux et non plus émulation/virtualisation), de fonctionnalités avancées, notamment l'utilisation de Docker. Vous pouvez donc être amené à passer de WSL1 à WSL2 pour des besoins spécifiques.
WSL2 présente un souci lors de l'établissement d'un tunnel VPN: une fois le tunnel établit, on perd l'accès réseau dans sa distribution WSL.
Quelques références à ce bug:
- WSL2 , problem with network connection when VPN used (PulseSecure).
- DNS server coming from vpn network is not reflected in WSL.
- wsl 2 ubuntu 18.04 unable to connect to IP resources with Cisco Annyconnect active.
Un workaround efficace est décrit dans la vidéo suivante.
Workaround
Déconnecter le VPN
- Dans votre client VPN (Cisco AnyConnect, FortiClient, client PulseSecure, profil VPN Windows...), déconnectez vous.
- Fermez le client VPN.
Lancer une distribution Linux
Si ce n'est pas déjà le cas:
- si vous l'utilisez, lancez Windows Terminal.
- ouvrir une distribution Linux (Debian dans mon cas).
Désactiver l'interface réseau WSL
Dans une fenêtre PowerShell en administrateur:
netsh interface set interface "vEthernet (WSL)" disable
Connecter le VPN
- Lancer votre client VPN (Cisco AnyConnect, FortiClient, client PulseSecure, profil VPN Windows...).
- Vérifier que vous contactez bien les ressources accessibles uniquement via le VPN.
Réactiver l'interface réseau WSL
Dans une fenêtre PowerShell en administrateur:
netsh interface set interface "vEthernet (WSL)" enable
Tester
Depuis votre distribution WSL favorite:
ping 8.8.8.8 ping www.google.fr
Les 2 commandes doivent fonctionner:
- accès réseau.
- résolution DNS.