Routing des gesamten Datenverkehrs mit Ausnahme einiger IP-Bereiche durch das Standard-Gateway in Mountain Lion

5719
Espen Herseth Halvorsen

Ich verwende VPN (Cisco IPSec) über die standardmäßigen Mountain Lion-Netzwerkeinstellungen. In Lion (und auch in Snow Leopard) habe ich Folgendes getan, um das Routing wieder auf die Verwendung meines Standard-Gateways für den gesamten Datenverkehr zu ändern und ein paar Routen für die spezifischen IP-Bereiche einzurichten, die für ein VPN erforderlich waren:

# Route traffic through VPN: route -nv add -net IPRANGE -interface utun0 #...more lines for the different IP-ranges that should go through VPN)  # Route all other traffic through the old default gateway: route change default DEFAULT-GATEWAY-IP 

Dies scheint unter Mountain Lion nicht zu funktionieren. Die (neue Implementierung?) Von Cisco IPSec scheint der Routingtabelle dynamisch viele Routen hinzuzufügen, wenn ich sie im Browser besuche.

Ich habe viel darüber debuggen (Ping, Traceroute), aber immer noch keine Lösung gefunden.

Das grundlegende Problem, das ich zu lösen versuche, besteht darin, den Verkehr für bestimmte IP-Bereiche über VPN zu routen. Alles andere sollte funktionieren, da ich nicht mit VPN verbunden bin. Jede andere Lösung, die das erreicht, ist für mich in Ordnung =)

3
"Das scheint nicht zu funktionieren" ist keine sehr gute Beschreibung des Problems. Was genau geht schief? David Schwartz vor 11 Jahren 0
Wie gesagt, scheint es für jede Domain, die ich besuche, neue (und spezifischere) Routen hinzuzufügen. Dies war bei Lion / Snow Leopard nicht der Fall. Dies bedeutet, dass diese Methode zum Ändern der Standardroute nicht funktioniert, da für jede IP / Domäne, die ich besuche, neue und spezifischere Routen erstellt werden und diese die Standardroute übernimmt. Espen Herseth Halvorsen vor 11 Jahren 0
Verwenden Sie den integrierten IPSec-Client? Haben Sie den gesamten Datenverkehr über das VPN überprüft? Standardmäßig sollten die Routingtabellen verwendet werden. Vergewissern Sie sich, dass für Ihre Standardeinstellung der Ort festgelegt ist, an dem Sie glauben, dass er nicht vorhanden ist, und dass Sie keine spezifischeren Routen haben, z. Doon vor 11 Jahren 0
Ja, ich verwende die integrierte Cisco IPSec. Die Option zum Senden von Datenverkehr über die VPN-Verbindung ist nicht vorhanden. Espen Herseth Halvorsen vor 11 Jahren 0

1 Antwort auf die Frage

2
Allen

If you specify in the VPN preference panel (System Preferences, VPN item, Advanced) that you do NOT want all traffic routed through the VPN, then after connecting to the VPN, none of your routes will be altered. Then, to get routes just for the specific things you need that are on the inside of the VPN, you need to create this file:

/etc/ppp/ip-up

containing

#!/bin/bash /sbin/route add -net 10.10.10 -interface ppp0 

where "10.10.10" corresponds to the subnet of where you are inside. The above works when I want to get into the 10.10.10/24 network, whose subnet is 255.255.255.0. If the subnet was 255.255.0.0, I would substitute "10.10" instead.

When you made the file, set its permissions so it will run after the VPN connects:

chmod 755 /etc/ppp/ip-up 

I don't know what to tell you if you have multiple VPNs that you need to connect to, each with different routes that need to be added. But this works for just 1 VPN.

Dies scheint die perfekte Lösung zu sein. Das einzige Problem ist, dass ich nicht die Option angeben kann, dass in den erweiterten Einstellungen kein Verkehr durch die VPN-Verbindung geleitet werden soll. Diese Option ist bei einer Cisco IPSec VPN-Verbindung nicht verfügbar. Espen Herseth Halvorsen vor 11 Jahren 3
Und zur Klarstellung: Diese Option ist bei VPN-Verbindungen der Typen "L2TP über IPSec" und "PPTP" vorhanden, jedoch nicht bei "Cisco IPSec". :( Espen Herseth Halvorsen vor 11 Jahren 0