Ena aplikacija na stroju gre ven skozi VPN, druga ne, in oba uporabnika prisegata, da nista ničesar spremenila. Razlika je pogosto odločitev o vezavi, ki jo sprejme sama aplikacija: vtičnica, vezana na napravo, izvorni naslov, izbran pred povezavo, ali imenski prostor z lastno usmerjevalno tabelo. Vsaka spremeni, katera pot velja, in nobena se ne pokaže v splošnem preverjanju IP v brskalniku.

Tri različne vezave, tri različni učinki

Vezava na napravo in vezava na izvorni naslov sta sorodni operaciji z različnimi posledicami. Vezava na napravo lahko prisili promet, da gre ven skozi en vmesnik, in obide običajno iskanje poti za to vtičnico. Vezava izvornega naslova še vedno gre skozi izbiro poti, vendar se lahko izbrani vir ujema s pravilom politike in paket pošlje drugam. Razlika se sliši akademsko, dokler pravilo ne usmerja po viru. Takrat odloči vse.

Omrežni imenski prostor je tretji primer. Ima svoje vmesnike in lastno usmerjevalno tabelo, zato na aplikacijo v njem privzeta nastavitev gostitelja sploh ne vpliva. Če vse tri obravnavamo kot isto stvar, nastanejo samozavestne razlage, ki ne prestanejo prvega preizkusa.

Ugotovite, kaj aplikacija v resnici nastavi

Preden se dotaknete poti, preberite omrežno konfiguracijo aplikacije ali njeno dokumentirano vedenje. Če ponuja izbiro vmesnika, polje izvornega naslova ali možnost imenskega prostora, je treba najprej pregledati prav to nastavitev. Če ne, je vezava lahko notranja in vidna le skozi sledenje ali lastno diagnostiko.

V Linuxu imajo možnosti vtičnice, kot je SO_BINDTODEVICE, dokumentiran obseg in zahteve po dovoljenjih, neprivilegirani proces pa jih morda sploh ne more nastaviti. Ta omejitev je koristen namig: če možnosti ni mogoče uporabiti, aplikacija verjetno ni vir razlike.

Usmerjanje po politiki bere vir

Ko je konfigurirano usmerjanje po politiki, lahko pravilo izbere tabelo glede na vir paketa. Zato lahko vtičnica, ki veže izvorni naslov, sledi pravilu, ki se ga privzeta pot nikoli ne dotakne, tudi če noben vmesnik ni izrecno naveden.

Ponovite iskanje z isto družino naslovov, virom in imenskim prostorom, kot jih uporablja aplikacija. Splošno iskanje poti iz lupine v imenskem prostoru gostitelja odgovarja na drugo vprašanje, in to neskladje je najpogostejši razlog, da delujoča pot izgleda pokvarjena.

Razdeljen tunel in pomožni procesi

Razdeljen tunel za posamezno aplikacijo doda še en sloj. Odjemalec se lahko ujema s paketom ali procesom aplikacije, pomočnik, ki odpre lastno vtičnico, pa je ločen subjekt. Zaganjalnik in njegova storitev v ozadju lahko ustvarita različne povezave pod istim vidnim imenom.

Preverite, ali pravilo razdeljenega tunela pokriva proces, ki se res povezuje. Če se aplikacija veže na določen vmesnik, odjemalec VPN pa se ujema po paketu, se lahko odločitvi razlikujeta, ne da bi bila katera koli napačna.

Preizkusite lastno pot aplikacije

Po vsaki spremembi zaženite novo zahtevo iz aplikacije. Brskalnik, ki prikazuje želeni izhod, ni enakovreden dokaz za drug program, vezan na drug vmesnik, in predpomnjene povezave lahko še dolgo uporabljajo staro pot po spremembi nastavitve. Zaprite staro sejo, preden ocenite novo pravilo. Sicer preizkus meri preteklost.

Referenca za vtičnice Linux dokumentira SO_BINDTODEVICE in njegove zahteve. Najprej preberite lastno konfiguracijo aplikacije, ponovite iskanje v istem kontekstu in šele nato odločite, ali je treba spremeniti pot ali vezavo.

Sorodni članki