Hallo,
ich bin oft unterwegs in Hotelzimmern und möchte, da ich oft abends arbeite und nebenbei Streams, gerne auch aus England und Amerika, schaue folgendes bauen:
Ich habe auf einem Raspberry(172.16.0.150 verbunden über wlan0) im Heimnetz, Router Fritzbox (172.16.0.1), auf tun0 einen VPN-Server laufen. Auf tun1 nur als Bsp. eine Verbindung zu Amsterdam, auf tun2 eine Verbindung nach Rotterdam und so weiter. Mein Server nutzt "topology-subnet", so dass ich mich als client1, client2 oder client3 einloggen kann. Ich möchte nun, dass, wenn ich mich als client1 einlogge, tun0 mich nach tun1 weiter routet, als client2 aber nach tun2 weiter routet. Also, ich als client1 eine public ip aus Amsterdam habe und als client2 eine public ip aus Rotterdam. (nur als Beispiel)
Hier die relevanten Auszüge aus den Config-Dateien:
in ccd client1:
in ccd client2:
Auf dem Server läuft nun af tun1 als Beispiel eine Verbindung nach perfect-privacy-Amsterdam und
auf tun2 eine Verbindung nach perfect-privacy- Rotterdam. In beiden Configs ist:
aktiviert.
Die Routing-Tabelle sieht dann so aus:
Als Firewall-Skript habe ich:
und auf dem Client ist ip_forward aktiviert.
Natürlich kann das so noch nicht funktionieren. Es fehlt ja das Routing. Und genau das ist meine Frage. Welche Routen muss ich genau (am besten mit "route add" Befehlen, da leichter in einem Script zu verarbeiten) einfügen, damit das so, wie oben beschrieben funktioniert. Das die IP der VPN-Verbindungen von perfect-privacy sich ändern, ist kein Problem, da es ein leichtes für mich ist, das mit Python zu erledigen, wenn ich einmal die Systematik des Routens erkannt habe.
Ich hoffe, ich habe klar machen können, was ich bauen will. Ich hoffe auf eure Hilfe, weil ich mit dem Routing schon mehre lange Nächte mit try und error verbracht habe, ohne nennenswerten Erfolg.
ich bin oft unterwegs in Hotelzimmern und möchte, da ich oft abends arbeite und nebenbei Streams, gerne auch aus England und Amerika, schaue folgendes bauen:
Ich habe auf einem Raspberry(172.16.0.150 verbunden über wlan0) im Heimnetz, Router Fritzbox (172.16.0.1), auf tun0 einen VPN-Server laufen. Auf tun1 nur als Bsp. eine Verbindung zu Amsterdam, auf tun2 eine Verbindung nach Rotterdam und so weiter. Mein Server nutzt "topology-subnet", so dass ich mich als client1, client2 oder client3 einloggen kann. Ich möchte nun, dass, wenn ich mich als client1 einlogge, tun0 mich nach tun1 weiter routet, als client2 aber nach tun2 weiter routet. Also, ich als client1 eine public ip aus Amsterdam habe und als client2 eine public ip aus Rotterdam. (nur als Beispiel)
Hier die relevanten Auszüge aus den Config-Dateien:
Code:
dev tun0
proto udp
port 443
client-config-dir ccd
...
server 10.8.1.0 255.255.255.0
topology subnet
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 208.67.222.222"
push "dhcp-option DNS 208.67.220.220"
push "topology subnet"
...
in ccd client1:
Code:
ifconfig-push 10.8.1.2 10.8.1.1
Code:
ifconfig-push 10.8.2.2 10.8.2.1
Auf dem Server läuft nun af tun1 als Beispiel eine Verbindung nach perfect-privacy-Amsterdam und
auf tun2 eine Verbindung nach perfect-privacy- Rotterdam. In beiden Configs ist:
Code:
route-nopull
aktiviert.
Die Routing-Tabelle sieht dann so aus:
Code:
Kernel-IP-Routentabelle
Ziel Router Genmask Flags Metric Ref Use Iface
default fritz.box 0.0.0.0 UG 0 0 0 wlan0
default fritz.box 0.0.0.0 UG 303 0 0 wlan0
10.8.1.0 * 255.255.255.0 U 0 0 0 tun0
10.15.22.0 * 255.255.255.0 U 0 0 0 tun1
10.16.32.0 * 255.255.255.0 U 0 0 0 tun2
172.16.0.0 * 255.255.0.0 U 0 0 0 wlan0
172.16.0.0 * 255.255.0.0 U 303 0 0 wlan0
Als Firewall-Skript habe ich:
Code:
#! /bin/sh
sysctl -w net.ipv4.ip_forward=1
iptables -F -t nat
iptables -F
iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE
und auf dem Client ist ip_forward aktiviert.
Natürlich kann das so noch nicht funktionieren. Es fehlt ja das Routing. Und genau das ist meine Frage. Welche Routen muss ich genau (am besten mit "route add" Befehlen, da leichter in einem Script zu verarbeiten) einfügen, damit das so, wie oben beschrieben funktioniert. Das die IP der VPN-Verbindungen von perfect-privacy sich ändern, ist kein Problem, da es ein leichtes für mich ist, das mit Python zu erledigen, wenn ich einmal die Systematik des Routens erkannt habe.
Ich hoffe, ich habe klar machen können, was ich bauen will. Ich hoffe auf eure Hilfe, weil ich mit dem Routing schon mehre lange Nächte mit try und error verbracht habe, ohne nennenswerten Erfolg.