Verwendung von Windows WSL zum Konfigurieren des Routings Ist das möglich?

989
init_js

Ich habe festgestellt, dass die IP-Weiterleitung in WSL (Windows 10pro 1709) laut sysctl aktiviert zu sein scheint. Ich hoffe, dass ich damit einen Software-Router in WSL erstellen kann - um mit Hyper-V VM-Datenverkehr auf demselben physischen Host zu spielen. Die VM und der Host können über ein gemeinsam genutztes / 24 ipv4-Subnetz kommunizieren.

Idealerweise würde ich WSL verwenden, um iptables-ähnliche Regeln zu konfigurieren, oder über ein Software-Router-Programm verfügen, das RAW-Sockets verwendet, die den Verkehr neu schreiben könnten.

# on the WSL bash $ sysctl net.ipv4.ip_forward net.ipv4.ip_forward = 1 

Mein Windows-Host und die VM befinden sich in 192.168.4.X. 192.168.4.215 ist der Gastgeber. 192.168.4.228 ist die VM.

Ich habe der Windows-Firewall eine Regel hinzugefügt, die jeden eingehenden TCP-Port in diesem Subnetz zulässt, und die Konnektivität getestet, indem Webseiten übertragen werden, die vom WSL-Host bereitgestellt und von der VM heruntergeladen werden. (zB python -m SimpleHTTPServerin wsl ausgeführt und curl http://192.168.2.215auf der vm verwendet)

Ich habe den Windows-Host als Standardgateway in der VM hinzugefügt:

# route add default gw 192.168.4.215 # route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 192.168.4.215 0.0.0.0 UG 0 0 0 eth0 172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0 192.168.4.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 

Meine auf der VM initiierten TCP-Verbindungen werden jedoch nicht von Windows geroutet (z curl http://<publicip>. B. ). Verbindung kann nicht hergestellt werden

Was muss ich noch in Windows entsperren?

Bearbeiten

Ich habe das etwas aufgegeben. Da ich mit dem VM-Datenverkehr nur über den VPN-Tunnel des Hosts NAT machen wollte, erstellte ich schließlich eine spezielle NAT-Schnittstelle mit Powershell:

https://serverfault.com/questions/911578/windows-10-pro-as-a-nat-zwischen-zwei-schnittstellen

2

0 Antworten auf die Frage