Zwingen des macOS Sierra L2TP-Clients, eine bestimmte Schnittstelle zu verwenden

Ich habe eine WiFi (en0) und Ethernet (en8) Verbindung auf meinem Rechner. Jede Schnittstelle befindet sich in einem separaten Netzwerk und en0 hat Vorrang vor en8.

Das Gateway für en0 ist 192.168.100.1und für en8 ist es172.20.10.1

Es gibt Dienste, auf die ich zugreifen muss, die nur im en0-Netzwerk verfügbar sind, und das VPN ist nur über das en2-Netzwerk verfügbar.

Ich möchte in der Lage sein, den macOS Sierra L2TP-Client zu zwingen, en8 zu verwenden. Ich habe erfolgreich eine statische Route hinzugefügt, um die IP-Adresse, mit der ich mich verbinden möchte, an das Gateway von en2 weiterzuleiten und durch Ausführen verifiziert zu habentrace get <vpn address>

Die Verbindung schlägt jedoch immer noch fehl, und wenn ich mir die Protokolle ansehe, /var/ppp/ppp.logsieht es so aus, als würde der L2TP-Client immer noch versuchen, das en0-Gateway zu passieren:

Wed Mar 22 13:53:10 2017 : l2tp_get_router_address 192.168.100.1 from dict 1

Routing-Tabelle unten:Routing-Tabelle

Hoppla, ich habe es jetzt hinzugefügt.
Bitte fügen Sie die Ausgabe von hinzunetstat -f inet -r
@klanomath Ich habe den Beitrag mit der Routing-Tabelle aktualisiert. Ich bin jetzt auf einer neuen Maschine und die Schnittstellen sind jetzt en0 bzw. en8.

Antworten (1)

Das Vorhandensein von zwei Standardgateways in macOS führt dazu, dass das Gateway der Schnittstelle mit der höheren Priorität das Standardgateway ist und das andere ignoriert wird.

Um die Bestellung zu erhalten, geben Sie im Terminal ein: networksetup -listnetworkserviceorder.

Entfernen Sie also das Standard-Gateway der Schnittstelle en8 und fügen Sie dem VPN-Server entweder eine benutzerdefinierte Route hinzu:

sudo route add -host <VPN-server-ip-address> -interface en8

oder

sudo route add -host <VPN-server-ip-address> -link <MAC-of-en8>

oder zum Netzwerk (hier das Beispielnetzwerk: 10.0.0.0/16)

sudo route -n add -net 10.0.0.0/16  172.20.10.1

Je nach Netzwerkumgebung des VPN-Servers muss dort eine zweite invertierte Route hinzugefügt werden, die auf Ihr lokales 172.20.10.0/28-Netzwerk zeigt.