117471
Oct 06, 2015, updated at 18:24:44 (UTC)
3362
6
0
Route hinter VPN-Gateway
Ich lerne gerade Netzwerktechnik und bastle ein bisschen mit OpenVPN herum.
Folgendes Szenario auf dem Client (RoadWarrior):
eth0 (Client) - DHCP
tun0 (Client) - 1.1.1.6/24 (das ist eine statische IP-Adresse, die der Client vom VPN-Server bekommen hat. Der VPN-Server kann diese anpingen. Der Server hat an seinem Tunnelende die 1.1.1.5/24).
eth1 (Client) - 2.2.2.2/24
IP-Forwarding ist auf dem Client eingeschaltet.
Jetzt möchte ich auf dem Server eine statische Route setzen um die 2.2.2.2 erreichen zu können. Mein erster Versuch:
Ich habe gelernt, dass das nicht funktionieren kann. Der route-Befehl kann nur IP-Adressen handhaben, die an seinen Netzwerkschnittstellen hängen.
Also habe ich es über das Device versucht:
Im Nachhinein ziemlich naiv - hinter tun0 könnte schließlich "alles Mögliche" hängen. Also habe ich es mit einer Kombination der beiden Parameter versucht:
Und genau das funktioniert auch nicht. Seufz!
Einen IPSec-Tunnel möchte ich vermeiden, da ich mit dem Client "friendly user" in einem Testnetz bin und nichts überstrazieren möchte, indem ich Portforwardings usw. einfordere. Die VPN-Verbindung ist natürlich "genehmigt".
Eine Netz-zu-Netz-Kopplung via VPN möchte ich vermeiden, da VPN-Server und Netzwerkkonfiguration eigentlich über eine Web-GUI und eine Paketverwaltung beeinflusst werden. Da ist halt vieles direkt mit dem tun-Device verheiratet.
Die "push route" Funktion von OpenVPN funktioniert doch eigentlich nur, wenn der Server eine Route an den Client verteilt (oder?).
Wie werde ich da am ehesten glücklich?
Folgendes Szenario auf dem Client (RoadWarrior):
eth0 (Client) - DHCP
tun0 (Client) - 1.1.1.6/24 (das ist eine statische IP-Adresse, die der Client vom VPN-Server bekommen hat. Der VPN-Server kann diese anpingen. Der Server hat an seinem Tunnelende die 1.1.1.5/24).
eth1 (Client) - 2.2.2.2/24
IP-Forwarding ist auf dem Client eingeschaltet.
Jetzt möchte ich auf dem Server eine statische Route setzen um die 2.2.2.2 erreichen zu können. Mein erster Versuch:
route add -net 2.2.2.0/24 gw 1.1.1.6
Ich habe gelernt, dass das nicht funktionieren kann. Der route-Befehl kann nur IP-Adressen handhaben, die an seinen Netzwerkschnittstellen hängen.
Also habe ich es über das Device versucht:
route add -net 2.2.2.0/24 dev tun0
Im Nachhinein ziemlich naiv - hinter tun0 könnte schließlich "alles Mögliche" hängen. Also habe ich es mit einer Kombination der beiden Parameter versucht:
route add -net 2.2.2.0/24 gw 1.1.1.6 dev tun0
Und genau das funktioniert auch nicht. Seufz!
Einen IPSec-Tunnel möchte ich vermeiden, da ich mit dem Client "friendly user" in einem Testnetz bin und nichts überstrazieren möchte, indem ich Portforwardings usw. einfordere. Die VPN-Verbindung ist natürlich "genehmigt".
Eine Netz-zu-Netz-Kopplung via VPN möchte ich vermeiden, da VPN-Server und Netzwerkkonfiguration eigentlich über eine Web-GUI und eine Paketverwaltung beeinflusst werden. Da ist halt vieles direkt mit dem tun-Device verheiratet.
Die "push route" Funktion von OpenVPN funktioniert doch eigentlich nur, wenn der Server eine Route an den Client verteilt (oder?).
Wie werde ich da am ehesten glücklich?
Please also mark the comments that contributed to the solution of the article
Content-Key: 284772
Url: https://administrator.de/contentid/284772
Printed on: April 26, 2024 at 03:04 o'clock
6 Comments
Latest comment
das ist eine statische IP-Adresse, die der Client vom VPN-Server bekommen hat
Das ist Blödsinn, denn die bekommt er natürlich dynamisch vom Server verteilt !Guckst du hier:
OpenVPN Server installieren auf pfSense Firewall, Mikrotik. DD-WRT oder GL.inet Router
Das ist das IP Netzwerk was du im Server in dessen Konfig Datei mit server 10.1.1.0 255.255.255.0 z.B. definierst.
Nicht besonders intelligent hier öffentliche IPs zu nehmen dessen Besitzer du nicht bist !
Sinnvoller ist es hier private RFC 1918 IP Adressen zu verwenden...wie immer.
Der VPN-Server kann diese anpingen.
Der Client und alle anderen auch...Der route-Befehl kann nur IP-Adressen handhaben, die an seinen Netzwerkschnittstellen hängen.
Woher hast du diese "Weisheit". Stimmt natürlich nicht. Richtig ist das die Next Hop IP zu diesem Netz an einem Adapter dran ist am Server.Versuchst doch mal mit push "route 2.2.2.0 255.255.255.0"
Es reicht aber auch ein ganz normales route 2.2.2.0 255.255.255.0 in der Server Konfig.
Wieder nutzt du hier keine privaten IP Netze ! Besser ist 10.2.2.0 /24 !!
Am Client dann ein route print (wenn dieser ein Winblows Client ist !) bei aktiviertem OVPN Client und du weisst ob deine Route ins 2er Netz sauber auf den Client propagiert wurde vom Server und die Pakete ins 2er Netz dann in den Tunnel geroutet werden.
Hier sind auch wieder Traceroute und Pathping deine besten Freunde...
Alles andere erklärt dir das oben zitierte OVPN Tutorial hier im Forum.
bekomme ich das irgendwie nicht auf das pure OpenVPN herunterprojeziert. Wenn ich das könnte, gäbe es wohl nichts mehr zu lernen.
Na ja...mit ein bischen Nachdenken und Intelligenz kann man sich das aber auch sehr einfach erschliessen. Hinter dem GUI werkelt ja nix anderes als eine einfache Konfig Datei.Grundlage ist immer das:
https://openvpn.net/index.php/open-source/documentation/howto.html