Paano nagpapasya ang split tunneling kung aling trapiko ang gumagamit ng VPN
Ang split tunneling ay isang pangkat ng mga pasya sa ruta at pagkakabit, hindi isang mode na binubuksan. Tingnan kung paano nag-uugnayan ang mga tuntunin bawat app, mga prefix, DNS at mga switch ng seguridad.
Ang split tunneling ay isang patakaran sa pagruruta na inihayag bilang isang pangkat ng mga tuntunin, at ang kliyente ay tanging ang bagay na nag-i-install sa mga ito. Nagaganap ang paghihiwalay sa dalawang lugar: mga tuntunin sa pagtutugma na pumipili ng landas para sa bawat packet, at mga pagkakabit na nagpapanatili ng aplikasyon sa isang interface ano man ang sabihin ng talahanayan. Kung aling mekanismo umaasa ang iyong kliyente ang nagpapaliwanag sa karamihan ng mga sorpresa na iniuulat ng mga tao.
Ang patakarang maaari mong sabihin sa isang linya ay masusubok. Ang patakarang inilarawan bilang mas mabilis na pagba-browse ay hindi, at hindi nito sasabihin kung aling tuntunin ang babaguhin kapag ang kahilingan ay pumunta sa maling direksyon.
Nag-i-install ang kliyente ng mga tuntunin, ang kernel ang gumagawa ng pagpili
Kapag umangat ang tunnel, nagdadagdag ang kliyente ng mga ruta at madalas mga tuntunin ng patakaran sa parehong talahanayan na ginagamit ng iyong ibang mga interface. Ang bawat packet ay umaabot sa isang paghahanap na naghahambing ng destinasyon nito sa bawat kandidatong prefix at pinapanatili ang pinakaspesipikong tugma, habang ang prayoridad ay nagtatakda ng tabingi sa pagitan ng mga tuntuning tumuturo sa magkaibang talahanayan. Walang anuman sa paghahanap na iyon ang nakakaalam na ang packet ay galing sa isang tab ng browser at hindi sa isang gawaing backup. Ang tuntuning nananalo ang siyang nagtatakda ng landas, at mababasa mo ito bago at pagkatapos ng pagbabago.
Kaya't ang split tunneling ay maaaring magmukhang arbitraryo. Dalawang destinasyon sa isang aplikasyon ay maaaring tumahak ng magkaibang landas dahil lamang sa ang isang prefix ay mas makitid kaysa sa isa.
Ang parehong pagpili ay umiiral sa bawat plataporma, bagaman nagbabago ang mga pangalan. Itinutulak ng Windows ang pasya sa plataporma ng mga filter nito, inilalantad ng Android ang listahan ng pinapayagan bawat app sa pamamagitan ng serbisyo nitong VPN, at ikinakabit ng macOS ang tunnel sa isang aparatong sumusunod pa rin sa talahanayan ng pagruruta. Ang mga tala ng Microsoft sa pagruruta ay sulit basahin para sa kaso ng Windows, at ang gabay na isinulat para sa isang plataporma ay bihirang mailipat nang walang pagbabago sa isa pa.
Ang pagkakabit bawat app at mga prefix ng destinasyon ay magkaibang kasangkapan
Ang patakaran sa destinasyon ay nagtatanong kung saan pupunta ang packet at sumasangguni sa talahanayan ng ruta o sa isang tuntunin ng patakaran. Ang patakaran bawat app ay nagtatanong kung aling programa ang nagbukas ng socket, at pinapanatili ng plataporma ang programang iyon sa interface ng tunnel kahit na ang isang mas tiyak na ruta ay tumuturo sa ibang lugar. Ang pangalawa ay mas malakas dahil nakakaligtas ito sa mga pagbabago sa talahanayan, ngunit sinasaklaw lamang nito ang mga prosesong maaaring iugnay ng plataporma. Ang isang katulong na proseso, isang naka-embed na browser, o isang serbisyong nagbubukas ng sarili nitong koneksyon ay maaaring hindi magmana ng pagkakabit na inaasahan mo.
Wala sa dalawang paraan ang nakakaligtas sa isang patakarang nakabatay sa pangalan nang walang tulong. Ang mga address ng malalaking site ay umiikot sa mga network ng nilalaman, kaya ang pagpako ng isang hostname sa ilang prefix ay lumilikha ng tuntuning tahimik na tumitigil sa pagtutugma. Ang patakarang kailangang sumunod sa mga pangalan ay nangangailangan ng sangkap na may kamalayan sa resolver sa halip na isang static na ruta.
Ang DNS at ang switch ng seguridad ay sumusunod sa sarili nilang mga tuntunin
Ang paglutas ng pangalan ay isang pasyang hiwalay sa pagruruta ng packet, at ang split tunneling ay karaniwang gusto ng dalawang resolver: ang sa kompanya para sa mga panloob na pangalan, ang lokal para sa lahat ng iba pa. Maaaring mag-install ang kliyente ng mga setting ng DNS bawat interface, ibigay ang mga query sa isang tagapamagitan na resolver, o iwanang hindi ginagalaw ang default ng sistema. Ang isang browser na may sariling naka-encrypt na resolver ay lumalabag sa lahat ng tatlong kaayusan. Subukan ang isang paghahanap sa halip na ipagpalagay na sinunod ng resolver ang ruta.
Ang switch ng seguridad ay nagdaragdag ng filter sa itaas, at ang filter na iyon ay hindi laging nakikilala ang sinadyang pagbubukod sa isang aksidenteng pagtagas. Ang ilang kliyente ay hinaharangan ang lahat sa labas ng tunnel habang ang iba ay pinapayagan ang mga pagbubukod na inihahayag ng patakaran, kaya basahin kung aling pag-uugali ang ipinapatupad ng iyo bago umasa sa alinman sa dalawa.
Suriin ang paghihiwalay mula sa magkabilang panig
Subukan ang kasamang landas at ang ibinukod na landas nang hiwalay, at hatulan ang resulta sa pangalan ng interface at hindi sa isang pampublikong address. Ipinapalagay ng mga command na ito ang isang Linux host na may tunnel device na nakataas na. Palitan ang 203.0.113.10 ng isang destinasyong itinuturo ng iyong patakaran papasok, at ang 198.51.100.25 ng isang ipinapadala nito palabas.
ip route get 203.0.113.10
ip route get 198.51.100.25
resolvectl query intranet.example.com
curl -s --interface tun0 https://example.com -o /dev/null -w '%{http_code}\n'
Basahin nang magkasama ang unang dalawang sagot, dahil ang interface na pinangalanan sa bawat isa ay nagpapakita kung inilagay ng paghihiwalay ang destinasyong iyon sa tunnel. Ang query sa resolver ay nagpapakita kung aling server ang sumagot sa panloob na pangalan, at ang huling command ay nagpapatunay na ang tunnel device ay makakapagdala ng kahilingan. Ang pagkabigo sa ikalawang linya habang ang una ay nagtatagumpay ay nangangahulugang ginagawa ng patakaran ang eksaktong sinabi dito.
Ulitin ang pangkat pagkatapos ng muling pagkonekta at pagkatapos ng pagbabago sa network. Ang pag-renew ng lease at ang paggalaw ng mga interface ang mga lugar kung saan tumitigil ang paghihiwalay na tumugma sa layuning itinayo para dito, at ang na-save na output mula sa bawat pagtakbo ay nagpapakita ng paglihis.