Kill-switch lẹ́yìn ìyípadà láti Wi-Fi sí nẹ́tíwọ́kì alágbèéká: kí ni ó ń fọ́
Kill-switch ni a kọ sí àwọn orúkọ interface tí ìyípadà nẹ́tíwọ́kì ń rọ́pò. Ṣàyẹ̀wò ọ̀nà ìta, àwọn ẹbí àdírẹ́sì àti olùyẹ́nà kí o tó gbẹ́kẹ̀lé e.
Ní ìṣẹ́jú kan kọ̀mpútà àgbékalẹ̀ wà lórí Wi-Fi ọ́fíìsì, ní ìṣẹ́jú tó ń bọ̀ ó so mọ́ tẹlifóònù, àti àmì tunnel di aláwọ̀ ewé lẹ́ẹ̀kan sí i kí o tó parí yíyí àwọn fèrèsé. Ìmọ́lẹ̀ ewé ń sọ nípa pé tunnel ti so mọ́ra lẹ́ẹ̀kan sí i nìkan; ohun tí ìlànà ìtọ́sọ́nà àti dídènà ṣe ní àkókò àlàfo yẹn jẹ́ ìbéèrè mìíràn. Ìlànà yẹn jẹ́ àkójọ àwọn ipò ìbámu tí a kójọ nígbà ìfisọ́lẹ̀ gbẹ̀yìn, ó sì dárúkọ interface, àdírẹ́sì àti ẹbí àdírẹ́sì tí ìyípadà ṣẹ̀ṣẹ̀ yọ kúrò. Nítorí náà ìyípadà kan náà ń mú àbájáde mẹ́ta jáde tí ó dà bí i pé wọ́n jẹ́ ọ̀kan: dídènà ń tẹ̀síwájú, ìlànà ń dènà ìmúpadàbọ̀ tirẹ̀, tàbí ọ̀nà kan ń ṣí tí kò sí ohun tí ó bo.
Kò sí ohun tí ó yà àwọn ipò mẹ́ta yẹn sọ́tọ̀ lórí ojú ẹ̀rọ, nítorí náà béèrè àwọn ìdánimọ̀ tí a fi àwọn òfin mọ́, kì í ṣe àwọ̀ tí àmì ń fi hàn. Lórí Linux òfin kan lè dárúkọ interface tàbí ipset tí a kún láti inú rẹ̀; lórí Android a lè sọ fún VpnService àwọn nẹ́tíwọ́kì abẹ́lẹ̀ tí ó yẹ kí ó tẹ̀lé nípasẹ̀ setUnderlyingNetworks. Ìsopọ̀ kọ̀ọ̀kan ń tọ́ka sí ìsopọ̀ tí a máa rọ́pò, àti pé kọ̀ọ̀kan gbọ́dọ̀ ní ìgbéléwọ̀n mìíràn lẹ́yìn náà.
Ohun tí ìyípadà ń kọ lẹ́ẹ̀kan sí i gan-an
Nígbà tí ìsopọ̀ àtijọ́ bá pòórá, kọ́nà ń yọ àwọn àdírẹ́sì rẹ̀ kúrò, ń fa àwọn ọ̀nà tí ó gbà wọlé padà, ó sì ń tún yíyan àdírẹ́sì orísun kọ́ láti inú ohun tí ó kù. Ọ̀nà àkọ́kọ́ ń lọ sí ẹnubodè tuntun, àti àtọ́ka interface tí àwọn òfin àtijọ́ tọ́ka sí ti lọ tàbí a ti tún lò fún ẹ̀rọ mìíràn. Àwọn olùyẹ́nà ti ìsopọ̀ kọ̀ọ̀kan pẹ̀lú ni a ń sọ di tuntun, bó tilẹ̀ jẹ́ pé kì í ṣe ní ìṣẹ́jú kan náà pẹ̀lú àwọn ọ̀nà. Gbogbo èyí ń ṣẹlẹ̀ ní abẹ́ oníbàárà VPN, nítorí náà oníbàárà tí ó ń wo ipò tunnel tirẹ̀ nìkan kò rí ohun kankan nínú èyí.
Ìṣòro ni pé òfin ń ṣe àmì ìdánimọ̀ kan pàtó dípò èròǹgbà tí ó wà lẹ́yìn rẹ̀. Òfin tí ó ń sọ gbogbo ohun tí kò jáde nípasẹ̀ interface tunnel nù ń ṣe àmì orúkọ interface; òfin tí ó ń gba ibi-ìparí láyè ń ṣe àmì àdírẹ́sì tí nẹ́tíwọ́kì tuntun lè tọ́sọ́nà sí ibòmíì. Nígbà tí ìdánimọ̀ bá pòórá òfin kì í di aṣiṣe tí ó hàn gbangba: yálà ó dá ìbámu pẹ̀lú ohunkóhun dúró tàbí ó bẹ̀rẹ̀ ìbámu pẹ̀lú ohun tí kò tọ́.
Tún tunnel ìta kọ́ láìda ihò
Gbígbé ìta ti so mọ́ àdírẹ́sì orísun àtijọ́, nítorí náà ó gbọ́dọ̀ ṣí socket tuntun láti inú èyí tuntun. Nígbà tí ibi-ìparí jẹ́ orúkọ agbàlejò kì í ṣe àdírẹ́sì gangan, ìwádìí gbọ́dọ̀ ṣàṣeyọrí nígbà tí dídènà ṣì wà lẹ́sẹ̀. Èyí ni ìdẹkùn ìtẹ̀síwájú: ìlànà tí ó le tó láti sọ gbogbo ohun tí kì í ṣe ibi-ìparí nù yóò sọ ìwádìí tí a nílò láti rí i nù pẹ̀lú, àyàfi bí ìyọnnú bá ṣẹlẹ̀ kí a tó gbé dídènà sókè tàbí tí a bá gbé e gba tunnel tí ó ṣì wà láàyè. Àwọn ìtẹ̀síwájú méjèèjì lè ṣiṣẹ́, ṣùgbọ́n bí oníbàárà bá mọ èyí tí òun wà nínú nìkan.
Àwọn oníbàárà yàtọ̀ níbí ní ọ̀nà tí ó ṣe pàtàkì nígbà ìwádìí àrùn. Àwọn kan ń yanjú kí wọ́n tó fi àwọn òfin sílẹ̀, nítorí náà ìyípadà ń ná ìdádúró tí ó hàn, lẹ́yìn náà ó ń tún ara rẹ̀ ṣe; àwọn mìíràn ń di dídènà mú, wọ́n sì gbẹ́kẹ̀lé tunnel tí ó kù láti gbé ìwádìí náà, èyí tí ó kùnà pátápátá nígbà tí tunnel bá kú pẹ̀lú ìsopọ̀. Fífi ọ̀nà àkọ́kọ́ tààrà tí ó gbòòrò kún láti mú ìsopọ̀ padà máa ń jẹ́ kí ìdánwò gbà, ó sì máa ń fi ìjòdò tí o ń dènà sílẹ̀.
Ọ̀nà tí ó ṣì tọ́ka sí ẹnubodè àtijọ́ ń fúnni ní ìmúpadàbọ̀ tí ó há mọ́ra kan náà láti orísun mìíràn, nítorí náà ka tábìlì náà kí o tó dẹ́bi fún oníbàárà. Àwọn àṣẹ tí ó wà ní ìsàlẹ̀ ń dárúkọ interface àti àdírẹ́sì orísun tí kọ́nà yóò lò ní tòótọ́, èyí sì ń pinnu ní ìlà kan bóyá ọ̀nà àtijọ́ ṣì wà níbẹ̀.
ip route get 1.1.1.1
ip -6 route get 2606:4700:4700::1111Nígbà tí ìsopọ̀ tuntun bá mú IPv6 wá tí àwọn òfin kò sì mú wá
Àwọn nẹ́tíwọ́kì alágbèéká àti ti àlejò sábà máa ń fúnni ní ìpilẹ̀ IPv6 àgbáyé pàápàá nígbà tí LAN oníwaya ọ́fíìsì kò tíì ṣe bẹ́ẹ̀ rí. Ìlànà tí a kọ gẹ́gẹ́ bí àwọn òfin IPv4 nìkan — ìrísí àkọ́kọ́ àwọn ọ̀nà ìdáná iptables àti nftables tí a fi ọwọ́ ṣe — kò bo ohunkóhun nínú èyí. Tunnel wà ní ìsopọ̀, àwọn ohun èlò tí ó ní àǹfààní IPv6 ń jáde sí ìta, àmì kò sì lè fi ìyàtọ̀ hàn nítorí tunnel wà níṣẹ́ gan-an. Ọ̀ràn òdì kejì pẹ̀lú wọ́pọ̀ bákan náà: àkójọ òfin fún IPv6 nìkan kò ṣe ohunkóhun lórí nẹ́tíwọ́kì tí kò fi v6 fúnni.
Fi ohun tí ìsopọ̀ ń fúnni wé ohun tí ìlànà ń dárúkọ, ní ẹ̀gbẹ́ méjèèjì ìyípadà. Àwọn àṣẹ wọ̀nyí ń tẹ̀ àwọn òkodoro kan náà jáde tí oníbàárà ń lò:
ip -4 route show default
ip -6 route show default
sudo nft list ruleset | grep -c 'ip6 'Tí àṣẹ kejì bá tẹ̀ ọ̀nà àkọ́kọ́ jáde nígbà tí ẹ̀kẹta ń dá òdo padà, ìsopọ̀ tuntun lè gbé ẹ̀rọ náà jáde nípasẹ̀ IPv6 láìsí òfin kankan tí ó ń ṣọ́. Tún gbogbo mẹ́ta ṣe lẹ́yìn ìyípadà, nítorí pé nọ́mbà tí ó fani mọ́ra ni ìyàtọ̀ láàrín ìgbà méjì náà. Tí kejì kò bá tẹ̀ ohunkóhun jáde, ọ̀ràn òdì ni ó wà ní ipò, àti pé ìlànà tí ó wúwo lórí v6 níbẹ̀ jẹ́ ọ̀ṣọ́ lásán.
Olùyẹ́nà ń pààrọ̀ ọwọ́ sí àárín ìpàdé
Nínú àwọn ẹ̀rọ òde òní àwọn olùyẹ́nà so mọ́ àwọn ìsopọ̀, nítorí náà ìsopọ̀ tuntun ń dé pẹ̀lú àkójọ olùyẹ́nà tuntun àti bóyá ìwòye split-DNS mìíràn. systemd-resolved ń tọ́jú scope kan fún ìsopọ̀ kọ̀ọ̀kan, ó sì ń yan láàrín wọn nípasẹ̀ ọ̀nà, nígbà tí macOS ń ka àwọn olùyẹ́nà oníscope láti inú ìpamọ́ onígbà-dé-ìgbà, ó sì ń bọ̀wọ̀ fún ìtẹ̀síwájú interface. Oníbàárà tí ó fi olùyẹ́nà tirẹ̀ sílẹ̀ ń dìje pẹ̀lú ti ìsopọ̀, àwọn òfin ipò-àkọ́kọ́ tí kò sí ẹni tí ó ń wò ni ó ń pinnu olùborí. Nígbà náà ìyọnnú orúkọ lè fọ́ nígbà tí àyọkùrò àwọn pákẹ́tì ń ṣe gbáà èyí tí a kọ ọ́ fún.
Ka olùyẹ́nà tí ó ń ṣiṣẹ́ dípò èyí tí a ti ṣètò. Lórí agbàlejò systemd àṣẹ abẹ́ status ń fi hàn ìsopọ̀ tí scope kọ̀ọ̀kan ti wá, àti bóyá orúkọ private-DNS wà lẹ́sẹ̀:
resolvectl status --no-pager
resolvectl query intranet.example.comTí ìbéèrè bá jáde nípasẹ̀ ìsopọ̀ ti ara dípò tunnel, oníbàárà ti pàdánù ìdíje ipò-àkọ́kọ́, kò sì sí àtúnṣe ògiri-iná kankan tí yóò túnṣe orúkọ dídárúkọ. Fi ọ̀nà ìbéèrè wé ní ẹ̀gbẹ́ méjèèjì ìyípadà láti rí èyí tí ó yí. Orúkọ tí ó ń yanjú sí àdírẹ́sì àdáni tí nẹ́tíwọ́kì tuntun kò lè tọ́sọ́nà ni ọ̀ràn ẹ̀kẹta, ó sì ń farahàn bí àkókò pípa dípò àṣìṣe.
Dán ìyípadà wò kí o sì tọ́jú àkọsílẹ̀
Mọ̀ọ́mọ̀ tún ìyípadà ṣẹ̀ dípò dídúró dè é. Gbé tunnel sókè lórí ìsopọ̀ àkọ́kọ́, bẹ̀rẹ̀ gbígbé àwọn ohun tí ó pẹ́ àti ìwádìí tí ó ń tún ṣe, lẹ́yìn náà yí ìsopọ̀ padà kí o sì wo èyí tí ó yè. Ṣàkọsílẹ̀ àlàfo láàrín pípòórá ìsopọ̀ àtijọ́ àti ìròyìn tunnel pé ó ti so mọ́, nítorí pé nínú fèrèsé yẹn ni ìlànà ti dúró tàbí kò dúró. Ṣe ìtẹ̀síwájú náà ní ọ̀nà kejì pẹ̀lú, kí àbájáde má bàa jẹ́ ti ẹ̀gbẹ́ kan.
Àwọn àyọkùrò nílò ìrìn àkànṣe wọn, nítorí pé àyíká tí a dá láre lórí nẹ́tíwọ́kì àtijọ́ kì í ṣe èyí tí a dá láre lórí tuntun lọ́nà àìdábọ̀. Ẹ̀rọ ìtẹ̀wé, NAS tàbí captive portal lórí LAN ilé kò ní alábàákẹ́gbẹ́ lórí alágbèéká, àyọkùrò tí ó ń dé ọ̀dọ̀ wọn sì di òfin tí kò ní alábàákẹ́gbẹ́.
Ṣàkọsílẹ̀ àwọn orúkọ interface, àwọn ẹbí tí a fúnni, olùyẹ́nà tí ó wà lẹ́sẹ̀ àti gígùn ìdádúró fún ọ̀nà kọ̀ọ̀kan. Àtúnso mọ́ra ń fi hàn pé gbígbé náà gbádùn, kì í ṣe pé dídènà dúró ní àárín, àti pé àwọn wọ̀nyí jẹ́ ẹ̀sùn ọ̀tọ̀ọ̀tọ̀ fún tíkẹ́ẹ̀tì. Pẹ̀lú àkọsílẹ̀ yẹn, ìyípadà tó ń bọ̀ ni a fi wé ipò tí a mọ̀ dípò ìrántí.