web-dev-qa-db-fra.com

Windows WSL 2 ne peut pas ping machine hôte

Je viens de passer à Windows WSL 2 aujourd'hui. Le problème est que je ne peux pas ping la machine hôte.

J'ai eu l'adresse IP pour la machine hôte de /etc/resolv.conf.

De WSL 2 Console Ubuntu:

  • Je peux ping 8.8.8.8.
  • Je ne peux pas ping 172.17.12.65 (machine hôte).
  • Je ne peux pas ping www.google.com

S'il vous plaît aider, merci!

5
Jie

Certaines indications de ce fil GitHub suggèrent que cela peut être simplement le pare-feu sur votre hôte Windows bloquant le trafic ...

https://github.com/microsoft/wsl/issues/4192#issuecomment-503804455

Citant xtremeperf:

"En fait ... vous êtes probablement bloqué par le pare-feu Windows, car WSL2 est considéré comme étant sur un" réseau public ". Vous devrez ouvrir ces ports manuellement sur le pare-feu Windows car ils ne sont pas encore automatiquement configurés sur installation dans cette version bêta précoce. "

Comme Harrymc et Andoryu, vérifiez le contenu de "/etc/resolv.conf" pour vérifier l'adresse IP WSL2. Afaik devrait être celui de débloquer.

Malheureusement, le profil de connexion de l'adaptateur de commutation virtuel pour WSL2 est "public" par défaut et ne peut pas être défini sur "Private" de manière permanente, à moins que vous ne puissiez attribuer à un identifiant VLAN à l'adaptateur, mais je ne sais pas actuellement de façon de faire cela avec la fonction de plate-forme de la machine virtuelle de Microsoft, ce que j'utilise. Espérons que Microsoft permettra que cela soit facilement modifié dans une version future. Je n'ai pas encore recherché s'il est possible d'exécuter WSL2 à l'aide de la fonctionnalité de la plate-forme Hypervisor de Microsoft uniquement. Si quelqu'un sait, cela peut être utile.

Bien que cela puisse ne pas être souhaitable, vous pouvez simplement autoriser l'écho ICMP entrant sur le pare-feu hôte pour les profils "public". Un exemple en utilisant Windows Defender:

  1. Lancez le pare-feu de défenseur Windows via Panneau de configuration.
  2. Sélectionnez "Paramètres avancés" (à gauche)
  3. Cliquez avec le bouton droit sur "Règles entrantes" et choisissez "Nouvelle règle ..."
  4. Choisissez "Personnalisé" et cliquez sur "Suivant"
  5. Choisissez "Tous les programmes" et cliquez sur "Suivant"
  6. Sélectionnez le type de protocole "ICMPV4", puis cliquez sur "Personnaliser ..."
  7. Choisissez "Types ICMP spécifiques" et cochez "Demande d'écho" et cliquez sur "OK", puis "Suivant"
  8. Choisissez "Toute adresse IP" ou ajoutez des adresses spécifiques au besoin pour la section locale et distante (dans votre cas), puis cliquez sur "Suivant"
  9. Choisissez "Autoriser la connexion" et cliquez sur "Suivant"
  10. Choisissez public, domaine et privé et cliquez sur "Suivant"
  11. Donnez à la règle un nom significatif et cliquez sur "Terminer"
3
Johan van Tonder