
Ich muss eine virtuelle VirtualBox-Maschine einrichten, die als VPN fungiert. Ich verwende Vagrant, um die VM auf einem Ubuntu 14.04 LTS-Client zu erstellen. Ich verwende OpenVPN als VPN-Server auf einem Ubuntu 14.04 LTS-Server.
OpenVPN ist für den Betrieb im Netzwerk 10.8.0.0/255.255.255.0 konfiguriert. Der VPN-Server selbst ist 10.8.0.1. Beim Starten von OpenVPN und Herstellen einer Verbindung wird in keiner Protokolldatei ein Fehler angezeigt.
Wenn ich Vagrant so konfiguriere, dass es ein „öffentliches Netzwerk“ verwendet, kann ich eine Verbindung zum VPN herstellen und den VPN-Server anpingen:
ping 10.8.0.1 # ok
Wenn ich Vagrant so konfiguriere, dass es ein "privates Netzwerk" verwendet (mit einer statisch definierten IP 192.168.50.42), dannIch kann mich immer noch mit dem VPN verbinden, aber ich kann den VPN-Server nicht mehr anpingen. Alles (SSH, HTTP...), was versucht, die VPN-Adresse (10.8.0.1) zu verwenden, schlägt fehl.
ping 10.8.0.1 # ko
ifconfig auf dem VPN-Client:
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:10278 errors:0 dropped:0 overruns:0 frame:0
TX packets:10278 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:920543 (920.5 KB) TX bytes:920543 (920.5 KB)
tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:10.8.0.6 P-t-P:10.8.0.5 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:21 errors:0 dropped:0 overruns:0 frame:0
TX packets:140 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:7192 (7.1 KB) TX bytes:87424 (87.4 KB)
vboxnet0 Link encap:Ethernet HWaddr 0a:00:27:00:00:00
inet addr:192.168.50.1 Bcast:192.168.50.255 Mask:255.255.255.0
inet6 addr: fe80::800:27ff:fe00:0/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:486 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:63895 (63.8 KB)
wlan0 Link encap:Ethernet HWaddr 34:68:95:ee:01:75
inet addr:192.168.40.45 Bcast:192.168.40.255 Mask:255.255.255.0
inet6 addr: fe80::3668:95ff:feee:175/64 Scope:Link
inet6 addr: 2a01:e35:8af4:2240:ad1b:a074:194:ce3f/64 Scope:Global
inet6 addr: 2a01:e35:8af4:2240:3668:95ff:feee:175/64 Scope:Global
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:38051 errors:0 dropped:0 overruns:0 frame:26967
TX packets:26737 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:43426256 (43.4 MB) TX bytes:3423106 (3.4 MB)
Interrupt:19
Route auf dem VPN-Client:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 192.168.40.254 0.0.0.0 UG 0 0 0 wlan0
10.8.0.1 10.8.0.5 255.255.255.255 UGH 0 0 0 tun0
10.8.0.5 * 255.255.255.255 UH 0 0 0 tun0
192.168.40.0 * 255.255.255.0 U 9 0 0 wlan0
192.168.50.0 * 255.255.255.0 U 0 0 0 vboxnet0
192.168.50.42 192.168.40.254 255.255.255.255 UGH 0 0 0 wlan0
Jetzt kommt der interessante Teil: Durch das Löschen der letzten Route funktioniert der Ping:
route del -net 192.168.50.42 gw 192.168.40.254 netmask 255.255.255.255 dev wlan0
Die Probleme sind:
- diese Route ist jedes Mal wieder da, wenn ich die VM zurücksetze (ich glaube, jedes Mal, wenn ich einen Vagrant Up mache)
- Ich weiß nicht, wie sich das auf einem Windows-Client verhalten würde
- Ich brauche dies so weit wie möglich automatisiert
Fragen:
- Warum muss ich eine scheinbar völlig unabhängige Route in einem anderen Netzwerk löschen, damit mein VPN-Server erreichbar ist? (Ich vermute, das hat etwas mit der IP zu tun, die ich für die Verbindung mit dem VPN-Server verwende ...)
- Wie kann ich das beheben?
Danke schön,