Kill-switch baada ya kuhama kutoka Wi-Fi kwenda mtandao wa simu: nini huvunjika
Kill-switch huandikwa dhidi ya majina ya violongo ambayo mabadiliko ya mtandao hubadilisha. Angalia njia ya nje, familia za anwani na kitatuzi kabla ya kuiamini.
Wakati mmoja kompyuta mpakato iko kwenye Wi-Fi ya ofisi, wakati unaofuata imeunganishwa na simu, na kiashiria cha handaki ni kijani tena kabla ya kumaliza kubadilisha madirisha. Mwanga wa kijani huarifu tu kwamba handaki imeunganishwa upya; kile sera ya uelekezaji na uzuiaji ilifanya katika pengo hilo ni swali lingine. Sera hiyo ni seti ya masharti ya ulinganishaji yaliyokusanywa wakati wa usakinishaji wa mwisho, na inataja violongo, anwani na familia ya anwani ambazo uhamishaji umezitoa hivi punde. Kwa hivyo mabadiliko hayo hayo hutoa matokeo matatu yanayofanana: uzuiaji unaendelea, sera inazuia urejeshaji wake yenyewe, au njia inafunguka ambayo hakuna kinachoifunika.
Hakuna kitu kwenye skrini kinachotenganisha hali hizo tatu, kwa hivyo uliza ni vitambulisho vipi sheria zilipachikwa, badala ya rangi gani kiashiria kinaonyesha. Kwenye Linux sheria inaweza kutaja violongo au ipset iliyojazwa kutoka kwake; kwenye Android VpnService inaweza kuambiwa mitandao ya msingi ya kufuata kupitia setUnderlyingNetworks. Kila kiungo kinaelekeza kwenye mkusanyiko unaokaribia kubadilishwa, na kila kimoja lazima kitathminiwe upya baadaye.
Uhamishaji huandika upya nini kwa kweli
Mkusanyiko wa zamani unapotoweka, kerneli huondoa anwani zake, hurejesha njia zilizopita ndani yake, na hujenga upya uchaguzi wa anwani chanzo kutoka kile kilichobaki. Njia ya kawaida huhamia lango jipya, na faharasa ya violongo ambayo sheria za zamani ziliirejelea imetoweka au imetumika upya kwa kifaa kingine. Vitatuzi vya kila mkusanyiko pia hufanywa upya, ingawa si wakati mmoja na njia. Haya yote hutokea chini ya mteja wa VPN, kwa hivyo mteja anayefuatilia tu hali ya handaki yake haoni chochote katika haya.
Tatizo ni kwamba sheria husimba kitambulisho mahususi badala ya nia iliyo nyuma yake. Sheria inayotupa kila kitu kisichotoka kupitia violongo vya handaki husimba jina la violongo; sheria inayoruhusu sehemu ya mwisho husimba anwani ambayo mtandao mpya unaweza kuielekeza mahali pengine. Kitambulisho kinapotoweka sheria haionekani kuwa mbaya: ama huacha kulingana na kitu chochote au huanza kulingana na kitu kisichofaa.
Kujenga upya handaki ya nje bila kuchimba shimo
Usafirishaji wa nje ulikuwa umefungwa kwa anwani chanzo ya zamani, kwa hivyo lazima ifungue soketi mpya kutoka ile mpya. Sehemu ya mwisho inapokuwa jina la mwenyeji na si anwani halisi, utafutaji lazima ufaulu wakati uzuiaji bado unaendelea. Hii ni mtego wa mpangilio: sera kali vya kutosha kutupa kila kitu isipokuwa sehemu ya mwisho pia itatupa utafutaji unaohitajika kuipata, isipokuwa utatuzi utokee kabla ya kuondoa uzuiaji au ubebwe kupitia handaki iliyo hai bado. Mpangilio wowote kati ya haya unaweza kufanya kazi, lakini tu ikiwa mteja anajua yuko katika upi.
Wateja hutofautiana hapa kwa namna ambayo ni muhimu wakati wa uchunguzi. Wengine hutatua kwanza kisha kuweka sheria baadaye, kwa hivyo uhamishaji hugharimu usumbufu unaoonekana kisha hujiponya wenyewe; wengine huweka uzuiaji juu na hutegemea handaki iliyobaki kubeba utafutaji, jambo ambalo hushindwa kabisa handaki inapokufa pamoja na mkusanyiko. Kuongeza njia ya moja kwa moja pana ya kawaida ili kurejesha muunganisho kila mara hufanya jaribio lipite na kila mara huacha uvujaji uliokuwa ukizuia.
Njia inayoelekeza bado kwenye lango la zamani hutoa urejeshaji uleule uliokwama kwa sababu nyingine, kwa hivyo soma jedwali kabla ya kumlaumu mteja. Amri zilizo hapa chini zinataja violongo na anwani chanzo ambavyo kerneli ingetumia kwa kweli, na hilo huamua kwa mstari mmoja kama njia ya zamani bado imesakinishwa.
ip route get 1.1.1.1
ip -6 route get 2606:4700:4700::1111Wakati mkusanyiko mpya unaleta IPv6 na sheria hazileti
Mitandao ya simu na ya wageni mara nyingi hutoa kiambishi awali cha IPv6 cha kimataifa hata wakati LAN ya ofisi yenye waya haijawahi kufanya hivyo. Sera iliyoandikwa tu kama sheria za IPv4 — umbo la kawaida la mapishi mengi ya iptables na nftables yaliyotengenezwa kwa mkono — haifuniki chochote katika hilo. Handaki inabaki imeunganishwa, programu zenye ufikiaji wa IPv6 hutoka nje yake, na kiashiria hakiwezi kuonyesha tofauti kwa sababu handaki ipo juu kweli. Kesi ya kinyume pia ni ya kawaida: seti ya sheria za IPv6 pekee haifanyi chochote kwenye mtandao ambao hautoi v6.
Linganisha kile mkusanyiko unatoa na kile sera inataja, pande zote mbili za uhamishaji. Amri hizi huchapisha ukweli uleule ambao mteja anaufanyia kazi:
ip -4 route show default
ip -6 route show default
sudo nft list ruleset | grep -c 'ip6 'Ikiwa amri ya pili inachapisha njia ya kawaida wakati ya tatu inarudisha sifuri, mkusanyiko mpya unaweza kupeleka mashine nje kupitia IPv6 bila sheria yoyote kuilinda. Endesha zote tatu tena baada ya kubadilisha, kwa sababu nambari ya kuvutia ni tofauti kati ya uendeshaji huo miwili. Ikiwa ya pili haichapishi chochote, kesi ya kinyume inatumika na sera yoyote nzito kwa v6 hapo ni mapambo tu.
Kitatuzi hubadilisha mikono katikati ya kipindi
Kwenye mifumo ya kisasa vitatuzi vimefungwa kwa mikusanyiko, kwa hivyo mkusanyiko mpya huja na seti mpya ya vitatuzi na pengine mtazamo tofauti wa split-DNS. systemd-resolved huweka scope moja kwa kila mkusanyiko na huchagua kati yao kwa njia, wakati macOS husoma vitatuzi vyenye scope kutoka hifadhi inayobadilika na kuheshimu mpangilio wa violongo. Mteja anayesakinisha kitatuzi chake mwenyewe hushindana na kile cha mkusanyiko, na sheria za kipaumbele ambazo hakuna anayezifuatilia huamua mshindi. Wakati huo utatuzi wa majina unaweza kuvunjika wakati uchujaji wa pakiti unafanya kile hasa kilichoandikwa kwa ajili yake.
Soma kitatuzi kinachofanya kazi na si kile kilichosanidiwa. Kwenye mwenyeji wa systemd amri ndogo ya status huonyesha kila scope ilikotoka na kama jina la private-DNS linaendelea:
resolvectl status --no-pager
resolvectl query intranet.example.comIkiwa ombi linatoka kupitia mkusanyiko wa kimwili badala ya handaki, mteja ameshindwa shindano la kipaumbele na hakuna urekebishaji wa ukuta wa moto utakaorekebisha uundaji wa majina. Linganisha njia ya ombi pande zote mbili za uhamishaji ili kuona ipi iliyohama. Jina linalotatuliwa kwenda anwani ya faragha ambayo mtandao mpya hauwezi kuielekeza ni kesi ya tatu, na huonekana kama muda wa kumalizika badala ya kosa.
Fanya mazoezi ya uhamishaji na uweke rekodi
Zalisha mabadiliko kwa makusudi badala ya kuyasubiri. Inua handaki kwenye mkusanyiko wa kwanza, anza uhamishaji wa muda mrefu na utafutaji unaorudiwa, kisha badilisha mkusanyiko na uone ipi inayobaki. Andika muda kati ya kutoweka kwa mkusanyiko wa zamani na taarifa ya handaki kuwa imeunganishwa, kwa sababu katika dirisha hilo ndipo sera ilishikilia au haikushikilia. Endesha mfuatano huo kwa upande mwingine pia, ili matokeo yasibaki upande mmoja.
Isipokuwa zinahitaji mzunguko wao wenyewe, kwa sababu upitaji uliohalalishwa kwenye mtandao wa zamani hauhalalishwi kiotomatiki kwenye mpya. Printa, NAS au captive portal kwenye LAN ya nyumbani haina mwenzake kwenye mtandao wa simu, na isipokuwa iliyowafikia inakuwa sheria isiyo na mwenza.
Andika majina ya violongo, familia zinazotolewa, kitatuzi kinachofanya kazi na urefu wa usumbufu kwa kila mwelekeo. Kuunganishwa upya huthibitisha kuwa usafirishaji ulipona, si kwamba uzuiaji ulishikilia katika pengo, na hizo ni madai tofauti ya kuwekwa kwenye tiketi. Kwa rekodi hiyo uhamishaji unaofuata hulinganishwa na hali inayojulikana badala ya kumbukumbu.