Ee Programm soll déi gewéinlech Verbindung benotzen, während alles aneres am Tunnel bleift, an de Client huet keen Schalter dofir. Et gëtt och kee verstoppte Menü ze fannen. Eng Route gëtt aus Felder bannen am Paket gewielt, an de Paket dréit Adressen a Porten anstatt d’Identitéit vum Prozess, deen en erstallt huet, dofir muss eng Ausschléissung an engem vun dëse Felder ausgedréckt ginn. Follegt eemol engem Paket a méi an déi verfügbar Méiglechkeete sinn net méi mysteriéis.

Firwat de Client et net ubidden kann

Destinatiounsrouting vergläicht d’Destinatiounsadress mat Präfixen an hält déi längst Iwwereestëmmung. An deem Moment gesinn all Paketen d’selwecht aus, wat et och erstallt huet. Quellpolitik-Routing erweidert de Verglach op d’Quelladress, an dat ass den Haken, deen all praktesch Léisung benotzt: ännert d’Quell, an eng aner Tabell gëtt eligibel.

Porten hëllefen net. Eng Ausschléissung no Port misst virun der Destinatiounssich bewäert ginn, an de Port spillt keng Roll an där Entscheedung. Alles, wat als portbaséiert Ausschléissung ugepries gëtt, schléisst tatsächlech iwwer en anert Feld aus an beschreift dat lass.

Echt Routing pro Applikatioun gëtt et do, wou d’Plattform Maschinerie dofir bäigefüügt huet, wéi Filter-Callouts op Windows oder d’VPN-Servicebindung op Android. Eng Desktop-Instanz vun OpenVPN bréngt dovunner näischt mat, an kee Konfiguratiounsflag erfënnt et.

Linux: markéiert de Prozess, route dann d’Mark

Den proppersten Usaz bind d’Entscheedung un de Prozess, deem de Socket gehéiert. D’owner-Iwwereestëmmung funktionéiert fir lokal generéierte Verkéier an der OUTPUT-Ketten, also kann eng Mark, déi do gesat gëtt, eng separat Tabell wielen:

iptables -t mangle -A OUTPUT -m owner --uid-owner 1001 -j MARK --set-mark 0x1
ip rule add fwmark 0x1 table 200
ip route add 192.168.1.0/24 dev eth0 src 192.168.1.0 table 200
ip route add default via 192.168.1.1 dev eth0 table 200

Pakete vum Benotzer 1001 konsultéieren dann d’Tabell 200 a verloossen iwwer de gewéinleche Gateway, während d’Haapttabell nach ëmmer alles aneres an den Tunnel schéckt. D’owner-Iwwereestëmmung gëllt nëmme fir lokal generéiert Paketen, wat genee de Verkéier ass, deen hei wichteg ass, an et kann Paketen, déi fir en aneren Host virugeschéckt ginn, net klassifizéieren. Iwwerpréift mat den Instrumenter an net mat der Absicht: ss -tnp weist déi lokal Adress an de besëtzende Prozess vun etabléierte Verbindungen, an ip route get 1.1.1.1 mark 0x1 weist, wéi eng Tabell d’Mark auswielt.

En Netzwierk-Namensraum ass déi méi robust Äntwert fir en autonoomt Programm, well all Socket, deen dran erstallt gëtt, duerch de Konstrukt un en gebonnen ass, also ierwen Hëllefsprozesser an Duechterverbindungen d’Verhale just ouni klassifizéiert ze ginn. De Präis ass Installatiounstechnik: eng veth-Koppel, eng Adress op all Enn, an eng Standardroute am Namensraum, déi zréck op den Host weist.

ip netns add novpn
ip link add veth-host type veth peer name veth-ns
ip link set veth-ns netns novpn
ip addr add 10.200.0.1/24 dev veth-host
ip netns exec novpn ip addr add 10.200.0.2/24 dev veth-ns
ip netns exec novpn ip route add default via 10.200.0.1

Windows: d’Destinatioun entscheet nach ëmmer

Windows wielt d’Ausgangsinterface aus der Destinatioun, dofir muss e Programm, dat en anere Wee wëll, eppes änneren, wat de Stack virun deem Choix konsultéiert. ForceBindIP deckt déi éischt Halschent: et start e Programm mat Sockets, déi schonn un eng lokal Adress gebonnen sinn, déi Dir nennt. Dat eleng ännert net, iwwer wéi eng Interface de Paket erausgeet, well d’Destinatioun nach ëmmer d’Route wielt. Bind eng Quell op engem Laptop, deem seng Standardroute an den Tunnel weist, an de Paket geet trotzdem an den Tunnel.

D’Symptom huet eng liesbar Form, soubal een se kennt. Et gëllt fir eng LAN-Adress, déi déi gewielten Interface direkt erreecht, a versot fir alles am Internet, deem seng Route op den Tunnel weist. Et gesäit och aus wéi wann et funktionéiert, bis d’Programm Aarbecht un en Hëllef gëtt, well engem Hëllef, dee säin eegene Socket opmécht, gouf ni vun der Bindung gesot.

Verleeënt d’Entscheedung, wann ee Prozess déi falsch Eenheet ass

Wann déi richteg Fuerderung en Apparat an net e Programm ass, setzt en op seng eegen SSID oder VLAN a loosst de Router entscheeden: déi Quell hëlt de normale Wee, während aner Quelle den Tunnel benotzen. Eng dedizéiert Gateway-Maschinn ass déi aner éierlech Konzeptioun: si hält de VPN a kritt just d’Destinatiounen, déi de Router him schéckt. Op engem VLAN deckt d’Politik all Flux of, deen den Apparat opmécht, inklusiv déi Hëllefsprozesser, déi den Windows-Usaz gebrach hunn. Den Tausch ass den Ëmfang: zwee Programmer op deem Apparat kënnen net méi ënnerschiddlech behandelt ginn.

Déi zwee si Quell- oder Destinatiounspolitik mat engem Ëmfang, deen een an engem Saz soe kann. Keen ass pro Applikatioun, an eng Konzeptioun, déi sech als pro Applikatioun verkeeft, versot déi éischte Kéier, wou d’Programm seng Aarbecht un en zweeten Prozess delegéiert.

Ähnlech Artikelen