Wie kann ich Datenverkehr für eine bestimmte IP-Adresse selektiv durch den VPN-Tunnel leiten (nicht den gesamten Datenverkehr)?

5

Ziel: Selektive Weiterleitung des Datenverkehrs über ein VPN, sodass das allgemeine Surfen / Herunterladen über die normale primäre Verbindung erfolgt und der VPN-Datenverkehr meines Unternehmens über das VPN erfolgt.

Ich habe ein ähnliches Verfahren erwähnt versucht hier , aber egal , wie ich die Details verändert es hat nicht funktioniert.

Das VPN funktioniert, ich kann die Verbindung herstellen und den gesamten Datenverkehr darüber leiten, so dass das nicht das Problem ist.

Privat-IP: 192.168.34.X

IP von VPN: 192.168.1.X

IPs (über VPN), die versuchen, auf das interne Netzwerk zuzugreifen: 10.4.XX, 196.220.XX

Wie kann ich Datenverkehr für eine bestimmte IP-Adresse selektiv durch den VPN-Tunnel leiten (nicht den gesamten Datenverkehr)?

Nate Kessel
quelle
Schade, dass ich aus irgendeinem Grund keinen Kommentar abgeben kann - dies ist keine Antwort, sondern eine Fortsetzung. Bevor Sie es löschen, lesen Sie bitte meine Frage hier: apple.stackexchange.com/questions/96071/… Ich möchte meinen VM-Verkehr (oder nur einige bestimmte öffentliche IPs) über mein PPTP-VPN weiterleiten, aber (möglicherweise aufgrund meiner Einstellungen) nicht manuell) Ich kann die Einzelheiten nicht herausfinden. Vielen Dank!
László

Antworten:

2

Schritt 1: Erstellen Sie in / etc / ppp zwei Nur-Text-Dateien mit den Namen ip-up und ip-down und machen Sie die beiden Dateien ausführbar:

$ sudo touch /etc/ppp/ip-{up,down}
$ sudo chmod +x /etc/ppp/ip-{up,down}

Schritt 2, ändern Sie die IP- Adresse der Datei und fügen Sie Folgendes hinzu:

#!/bin/sh
export PATH="/bin:/sbin:/usr/sbin:/usr/bin"

OLDGW=`netstat -nr | grep '^default' | grep -v 'ppp' | sed 's/default *\([0-9\.]*\) .*/\1/'`

if [ ! -e /tmp/pptp_oldgw ]; then
    echo "${OLDGW}" > /tmp/pptp_oldgw
fi

dscacheutil -flushcache
route add 10.4.0.0/24 "${OLDGW}"

Schritt 3, ändern Sie die IP-Adresse und fügen Sie Folgendes hinzu:

#!/bin/sh
export PATH="/bin:/sbin:/usr/sbin:/usr/bin"

if [ ! -e /tmp/pptp_oldgw ]; then
        exit 0
fi

ODLGW=`cat /tmp/pptp_oldgw`

route delete 10.4.0.0/24 "${OLDGW}"
rm /tmp/pptp_oldgw
Kukoo
quelle
Versuchte dies genau wie Sie beschrieben - es hat nicht funktioniert. Es ist immer noch nicht möglich, über das VPN auf eine der Webseiten zuzugreifen, während das andere Surfen über die Standardverbindung erfolgt. Irgendwelche weiteren Gedanken?
Nate Kettles
Das Skript leitet selektiv keinen Verkehr für eine bestimmte IP weiter. Mit Ausnahme dieser IP-Adresse erfolgt die Weiterleitung ausschließlich über VPN. ip-up wird ausgeführt, wenn Sie eine Verbindung zu VPN herstellen. Die spezifische IP-Adresse wird zu Ihrer alten Routentabelle hinzugefügt (also nicht über VPN). ip-down wird ausgeführt, wenn Sie die VPN-Verbindung trennen.
Kukoo