Zwee Tunneladressen op enger klenger Plack gesinn aus wéi e Feeler, an de Reflex ass et, eng ze läschen. Dee Reflex zerbricht dat, wat en hätt solle botzen. En Host mat zwee Spréng hält eng Adress pro Uschloss, an all Adress gëtt vun enger anerer Route gewielt. D'Fro, déi et wäert ass ze stellen, ass wéi eng Route wéien Träger fir wéi eng Destinatioun aussicht, net wéivill Adressen et gëtt.

Dräi Destinatiounen, déi verschidden Träger brauchen

Eng Kette mat zwee Spréng sinn dräi geschachtelt Destinatiounsklassen, an all gëtt vun engem aneren Uschloss gedroen. De baussenzege Peer muss iwwer de physesche Link erreecht ginn. Den bannenzege Peer muss duerch den baussenzege Tunnel erreecht ginn. D'Destinatioun vun der iwwerdeckter Applikatioun muss duerch den bannenzege Tunnel erreecht ginn, deem säin eegenen Transport vum baussenzege gedroe gëtt.

Destination classView that names the carrierCommand that proves itSymptom when the wrong carrier wins
Outer peer, 198.51.100.10the main table, by destinationip route get 198.51.100.10the outer handshake never completes
Inner peer, 203.0.113.7the main table once the outer tunnel is upip route get 203.0.113.7the inner handshake leaves over the physical link
Application destination, 172.30.9.1the table the inner client's traffic is selected intoip route get 172.30.9.1 from 10.8.0.2the exit address looks right and the traffic never crossed the outer hop
Parallel tunnels, one per source groupone policy per group, not the main tableip rule show beside a marked test connectionboth tunnels are up and one steals the other's traffic

Fëllt d'Reihen mat de richtege Adresse vum Lieser aus, ier dir eng Route beréiert, well den Dësch nëmmen notzege ass, wann en konkret ass. Eng funktionéierend Kette erfëllt all véier Reihen op der selwechter Zäit, an eng hallef funktionéierend Kette erfëllt meeschtens eng dovun mat dem falschen Träger. Genee déi falsch Rei als Feeler ze liesen ass et, wat e Routingproblem an en ganze Nomëtteg vun Ännerungen ëmwandelt.

Adressen hunn Rollen, net eng Zuel

Linux erlaabt verschidden Adressen op enger Interfacce an verschidden Tunnellen op engem Host, dofir seet eng Zuel näischt iwwer d'Korrektheet. Et geet drëm, wéi eng Adress zu wéi engem Uschloss gehéiert, an ob d'Route fir en bestëmmte Peer dee Uschloss auswielt, deen dir gemengt hutt. Dräi Visiounen äntweren drop aus dräi Richtungen, an et ass der Méi wäert, se all Kéier an der selwechter Uerdnung ze liesen.

D'Adressinventar weist, wat et gëtt a wéien Uschloss et besëtzt. D'Routendësch äntwert op d'Trägerfro fir gewéinlechen Destinatiounsverkéier. D'Politiksvisioun äntwert nach eng Kéier drop fir Verkéier, deen no Quell oder Mark gewielt gëtt, wat déi normal Usuerdnung ass, wann zwee Clienten en Host deelen.

ip -4 addr show
ip -4 route show table all
ip rule show

Eng Adress läschen, well d'Lëscht laang ausgesäit, kann en Deel vum Wee ewechhuelen, an eng Route läschen, well se iwwerflësseg ausgesäit, mécht dat selwecht méi roueg. Keng vun den zwou produzéiert e Feeler; de Peer hält just op, op dem Wee ze äntweren, deen dir gemengt hutt, wärend en iwwer en aneren erreechbar bleift. Eng Applikatioun, déi d'Ausganksadress vum bannenzege Peer mellt, beweist net, datt de Verkéier duerch den baussenzege Tunnel gaangen ass, well direkten Zougang déiselwecht Observatioun gëtt. Genee dës Kluft tëscht enger Observatioun an engem Beweis ass de Grond, firwat den Träger op der Routingschicht gepréift gëtt.

D'Aktivéierungsuerdnung schléit eng fix Waardezäit

Wann de bannenzege Client vun enger Adress oder enger Route ofhänkt, déi de baussenzege Client liwwert, muss d'Aktivéierung op déi Ressource waarden an net op eng Verzögerung. Eng Waardezäit funktionéiert bis zu deem Dag, wou den baussenzege Tunnel lues ass, an dann verseeft se intermittéierend op eng Manéier, déi kee reproduzéiere kann. Eng Uerdnung op Basis vun Ofhängegkeeten eliminéiert d'Vermutung an kascht näischt ausser der eemoleger Beschreiwung vun der Ofhängegkeet. Och Interfacenimm sinn kee Mechanismus fir d'Uerdnung.

De Kernel gëtt Nimm wéi tun0 an tun1 an der Erstellungsuerdnung, an déi Uerdnung kann sech tëschent Neistarts oder Neiverbindungen änneren. Bind d'Konfiguratioun un eng Identitéit, déi d'Instrument liwwert, oder un en Numm, deen dir bewosst gitt. En Numm, deen dir wielt, ass e Kontrakt; en Numm, deen de Kernel wielt, ass en Zoufall.

Hält den Transport vun all Client aus der Applikatiounsroute vum aneren eraus, a sidd präzis wat d'OpenVPN-2.6-Routingoptiounen tatsächlech verspriechen. Den dokumentéierte Standard-Ëmleedungsmechanismus hält e Client fäeg, säin eegene wäite Peer iwwer de Gateway z'erreechen, deen et schonn gouf, wat eng spezifesch Rekursiounsschleef käppt. Et mécht een Client net zum Träger vun engem aneren, dofir bleift de Rescht vun der Kette är Design. Wou d'Kette eng Politik statt enger Route brauch, schreift eng explizit Quell- oder Markregel a test se mam Verkéier, mat deem se soll iwwerenee stëmmen.

Wat geschitt, wann de baussenzege Sprong stierwt

Ier d'Kette als komplett gëllt, entscheet, wat geschitt, wann de baussenzege Sprong verschwënnt. Den Transport vum bannenzege Client stierwt mat him, an den nächste Schrëtt ass eng Politikfro an net eng technesch: versoen, nach eng Kéier probéieren oder sech direkt iwwer de physesche Link nei verbannen. Genee deen drëtten Ausgang ass et, iwwer deen et sech lount nozedenken. E verwandelt roueg en Design mat zwee Spréng an eent mat engem Sprong an deem Ablack, wou de Benotzer gleeft, d'Ofdeckung wier nach intakt.

Wann zwee Spréng obligatoresch sinn, däerf de bannenzege Client kee direkte Wee opbauen, wann de baussenzegen fort ass, an de Wee fir dat ze wëssen ass, de baussenzege Sprong ze briechen an ze kucken, wat de bannenzege mécht. En approuvéierten Ersatz ass eng legitim Äntwert, awer en muss opgeschriwwen, getest a matgedeelt ginn. En Ersatz, deen keen dokumentéiert huet, ass bei enger Incident-Iwwerpréifung net vun engem Leck z'ënnerscheeden.

DNS an déi aner Adressfamill gehéieren zu der selwechter Entscheidung. Eng lokal generéiert Ufro follegt der eegener Politik vum Host an net där vun engem virugeleitene Client, dofir ass de Resolver, dee fir virugeleitene Verkéier funktionéiert, vläicht net deen, deen den Host selwer benotzt.

Akzeptéiert all Schicht an der Uerdnung, wou dir se gebaut hutt

Test an der Uerdnung, wou d'Kette gebaut gouf: fir d'éischt den baussenzege Tunnel eleng, dann den Transport vum bannenzege Client duerch den baussenzege Tunnel, dann d'Applikatioun duerch den bannenzege Tunnel. All Akzeptanz muss eng frësch Verbindung sinn an net eng Säit, déi schonn op war. Briech an restauréier dann all Schicht eenzel a kuck, wat déi nächst mécht.

D'Resultat vum Ersatz ass hei déi wäertvollst Observatioun, an déi, déi eng ëffentlech IP-Säit ni weist. Späichert d'Peer-Weeër, d'Adressen, déi se benotzen, an deen Ausgang nieft der Konfiguratioun, well de gléckleche Wee ass net deen Deel, deen duerno a Fro gestallt gëtt.

Ähnlech Artikelen