Twa profylen binne ferbûn, en ien fan har draacht stil ferkear dat foar de oare bedoeld is. In Linux-host kin beide OpenVPN-klanten tagelyk sûnder swierrichheden draaie. Wat er net kin, is foar jo beslute hokker proses hokker prefiks opeaskje mei. Dy beslissing moat nommen wurde foardat de twadde tunnel omheech komt, net nei't in boarne ophâldt te antwurdzjen.

Begjin by it wurk dat de twadde keppeling dwaan moat

In kantoar berikber fia ien profyl en in laboratoarium berikber fia in oar hawwe beide tunnels omheech nedich en gjin fan beide dy't alles opeasket. Ien koppige applikaasje dy't fia it twadde profyl fuort moat, hat in beliedsregel nedich ynstee fan in twadde standertrûte. In reserveferbining hat mar ien tunnel tagelyk nedich, dus de reserve moat net mei de masine starte.

Dat binne trije ferskillende konfiguraasjes, en se wurde betize om't alle trije itselde begjinne: in twadde profyl en in slagge ferbining. Skriuw earst de bedoelde opstelling op en konfigurearje dêrnei dêrheen. Ien sin oer de bedoeling sparret in oere pakketfangst.

systemctl list-units --type=service 'openvpn-client@*'
ip -4 route show default

It earste kommando listet de rinnende eksimplaren op, ynklusyf dy't mei de hân bûten de behearder start binne. It twadde printsje't de hjoeddeiske standertfoardering, en dat is de tastân dy't jo letter útlizze moatte.

Oerlaapjende pools brekke earder as rûtjen

Twa servers sille noflik adressen út deselde 10.8.0.0/24 tawize. De klant hâldt dan twa ynterfaces binnen ien prefiks sûnder wat seit hokker bestimming by hokker heart, en it gedrach dat dêrút komt liket op in rûtfout mar is eins in nûmeringsfout. In pool opnij nûmerje kostet ien konfiguraasjewizing; elke lettere rûtomwei kostet in wykein. Kontrolearje de pool foardat jo der in rûte foar tafoegje.

Sjoch ek nei it lokale LAN. In thús-LAN mei nûmer 192.168.1.0/24 dat ien tunnel ek bleatleit, jout deselde dûbelsinnigens, en it symptoom is in hostnamme dy't oplost wylst de ferbining nea foltôget. Dat liket op in namme-oplossingsfout oant jo de rûtes printsje.

ip -4 addr show
ip route show table all | grep -E '10\.|192\.168\.'

Fergelykje beide útfieringen mei de twa serverkonfiguraasjes foardat jo de klant oanreitsje. As de prefiksen oerlaapje, stopje en nûmerje opnij, want gjin hoemannichte werstart sil se skiede.

Jou elk profyl syn eigen ienheid en elk prefiks in eigner

Elk profyl krijt syn eigen eksimplarnaam en syn eigen konfiguraasjebestân, dus it eksimplaar mei de namme office ladelet office.conf wylst dat mei de namme lab lab.conf ladelet. Befêstigje dy mapping fia de tsjinstbehearder ynstee fan in mapopsomming te fertrouwen, want in drop-in kin feroarje hokker bestân ladelet wurdt. Ferkearde mapping betsjut dat jo it profyl ôfstamje dat net rint.

Bepaal dêrnei wa't rûtes ynstallearret. As de servers net-ferienbere sets taastje, of wegerje de taast en list de prefiksen sels op, of lit ien profyl de standert hâlde en stjoer de oare mei beliedsregels. Twa prosessen dy't beide in standert ynstallearje einigje mei in stille winner en gjin skriftlik ferslach fan 'e beslissing.

systemctl cat [email protected]
grep -E 'route-nopull|pull-filter|redirect-gateway' /etc/openvpn/client/lab.conf

De earste lit de ienheid sjen mei elke oerskriuwing dy't har arguminten feroaret. De twadde lit sjen oft it profyl taastjoende rûtes hielendal akseptearret, en dat is de skeakel dy't alles dêrnei bepaalt.

Marks hâlde antwurden op it ynterface dêr't se wei kamen

As elke tunnel ferskillende boarnen betsjinnet, kin in antwurd fia de ferkearde keppeling fuortgean en stjert de ferbining nei it earste pakket. It patroan dat hâldt is oankommende pakketten markearje neffens ynfier-ynterface, dat mark op it antwurd weromsette, en elk mark in tabel mei syn eigen standertgateway jaan.

Losse omkearde-paadfiltering moat meastentiids fersoepelje foar de oanbelange ynterfaces, om't in antwurd legitimaasje oer in keppeling komt dy't de haadtabel nea kieze soe. Hâld de marks smel sadat se nea it eigen fersifere ferkear fan 'e tunnels fange, want dat soe de tunnel troch himsels stjoere.

ip rule show
ip route show table 101
sysctl net.ipv4.conf.all.rp_filter

Lês de besteande regels foardat jo in oare tafoegje. Dûbele prioriteiten en fergetten tabellen binne de gewoane reden dat in markbelied hielendal gjin effekt liket te hawwen.

Bewiis isolaasje troch ien keppeling te stopjen

Mei beide tunnels omheech, registrearje it adres fan elk ynterface, de rûte nei ien host efter elke tunnel, en it paad dat in net-besibbe bestimming nimt. Freegje de kernel om 'e syktocht ynstee fan ien tabel te lêzen, want ien tabel lit nea de definitive beslissing sjen.

Stopje dêrnei ien eksimplaar en sjoch hoe't syn ynterface en rûtes ferdwine wylst de oare trochgiet. In brek yn 'e oerlibbene betsjut dat de twa noch in apparaatnamme, in rûte of in firewallregel diele dy't nimmen skieden hat.

Bring it stoppe profyl werom en werhelje deselde kontrôles. As in tunnel allinnich de earste start nei in werstart oerlibbet, sjogge jo nei in libbenssyklusdefekt en net nei in rûtûntwerp.

Relatearre artikelen