WSL no puede acceder a servicios en la máquina Windows local

Descripción del problema

Desde WSL no se puede acceder a servicios que están disponibles en Windows

Causa del problema

El problema es que WSL está instalado de manera semioculta en una máquina virtual que está conectada al host Windows en una red con IP privada que Windows la considera con perfil público (hay tres perfiles: dominio, privado y público). Tanto la máquina WSL como la máquina Windows tienen sus propias IPs en dicha red privada. Por lo tanto, el firewall de Windows bloquea el tráfico entre ambas IPs.

Solución

Método 1

En Propiedades Windows Defender Firewall con seguridad avanzada, solapa perfil público, conexiones de red protegidas, personalizar y desmarcar vEthernet (WSL)

Método 2

Permitir el tráfico de red del adaptrador en el Firewall del Windows Host

New-NetFirewallRule -DisplayName "WSL" -Direction Outbound -InterfaceAlias "vEthernet (WSL)" -Action Allow

Método 3

Crear una regla de entrada en el Firewall de Windows para el servicio en concreto desde la IP de WSL para mayor seguridad