Schneller durch das VPN der TH
….bzw. daran vorbei ;-)

Für einige IT-Services der TH-Köln und des moxd lab ist es sinnvollerweise nötig, sich im VPN zu befinden während man im HomeOffice sitzt; wie beispielsweise für das TH-Wiki oder Downloads von PDFs aus der ACM Digital Library. Das geht prima mit dem Standard-VPN-Client der TH, jedoch wird dann der gesamte Netzverkehr durch den geöffneten VPN-Tunnel geschickt. Für manch andere Services wiederum ist das schlecht, bspw. weil die Performance in Videokonferenzen oder für Downloads sinken kann.

VPN-Split-Tunneling erlaubt es, nur ausgewählten Netzverkehr durch den Tunnel zu schicken. Wir zeigen hier, wie eine Lösung mit openconnect als VPN-Client sowie vpn-slice funktioniert. Getestet haben wir das unter MacOS.

Zuerst alles nötige installieren:

brew install openconnect
brew install vpn-slice

Wir erstellen eine Config-Datei thk-split-tunnel.conf und fügen folgendes ein:

protocol=anyconnect
user=CAMPUSID
authgroup=FHK-VPN
script=vpn-slice 139.6.0.0/16 dl.acm.org ieeexplore.ieee.org link.springer.com

Bei CAMPUSID unbedingt die eigene CampusID einfügen. Der Netzblock 139.6.0.0/16 steht für das Netz der TH Köln, die Namen von dl.acm.org und den anderen digitalen Bibliotheken werden automatisch auf die IPs aufgelöst. Anfragen an Server, die in diese Charakteristik passen, werden durch den Tunnel geschickt, alle anderen nicht.

Das VPN lässt sich nun über den Befehl starten, wobei das Passwort eingegeben werden muss.

sudo openconnect --config=thk-split-tunnel.conf vpn.fh-koeln.de

Beendet wird der Tunnel durch Killen des Prozesses (STRG+C oder kill). Ein bestehender Tunnel lässt sich mit traceroute überprüfen:

traceroute wiki.th-koeln.de
traceroute to wiki-01.cit-vip.fh-koeln.de (139.6.10.223), 64 hops max, 52 byte packets
1 139.6.0.1 (139.6.0.1) 31.828 ms 39.972 ms 23.113 ms
2 wiki-01.cit-vip.fh-koeln.de (139.6.10.223) 26.817 ms 22.778 ms 22.440 ms
...

traceroute dl.acm.org
traceroute: Warning: dl.acm.org has multiple addresses; using 104.18.16.13
traceroute to dl.acm.org (104.18.16.13), 64 hops max, 52 byte packets
1 139.6.0.1 (139.6.0.1) 33.494 ms 23.241 ms 23.381 ms
2 a02w1-a02s1.backbone.fh-koeln.de (139.6.14.70) 26.836 ms 23.362 ms 22.869 ms
3 cr-dui1-pwether10763.x-win.dfn.de (188.1.230.213) 31.891 ms 27.284 ms 27.082 ms
4 as13335.dusseldorf.megaport.com (194.146.118.139) 44.928 ms 26.830 ms 28.380 ms
...

traceroute zoom.com
traceroute to zoom.com (170.114.0.14), 64 hops max, 52 byte packets
1 fritz.box (192.168.2.1) 9.341 ms 0.985 ms 0.815 ms
2 xxxx.dip0.t-ipconnect.de (62.155.xxx.xxx) 8.923 ms 6.918 ms 8.517 ms
3 xxx-xx-x.ewr.us.net.dtag.de (62.154.xxx.xxx) 104.916 ms 100.450 ms 100.450 ms
4 62.157.248.123 (62.157.248.123) 106.355 ms 108.444 ms 99.642 ms
...

Der Verkehr zu wiki.th-koeln.de und dl.acm.org wird durch den Tunnel geschickt (siehe Hops der TH-Köln und DFN), der Verkehr zu zoom.com wird über den lokalen Router (192.168.2.1) geschickt und geht nicht durchs Nadelöhr.

Für die Erstellung der Lösung gab es ein paar Hinweise von der CampusIT. Vielen Dank! Jedoch wird von der CIT nur der offizielle VPN-Client supported. Bei Manuel Krischer finden sich ebenso ein paar nützliche Kniffe.

Tagged on: