Kion politika enkursigado ŝanĝas en VPN-trafiko, kaj kion ne
Reguloj elektas, kiun tabelon oni konsultas, do la defa vojo en la ĉefa tabelo ofte klarigas nenion. Legu prioritatojn, markojn kaj fontojn kune antaŭ ol aldoni regulon.
Politika enkursigado respondas al alia demando ol tiu, kiun faras la plej multaj problemtraktaj notoj. La ĉefa tabelo diras, kien iras celo; politikaj reguloj diras, kiun tabelon oni entute konsultas, kaj ili povas decidi tion laŭ la fonta adreso, marko de pako, aŭ la interfaco, sur kiu pako alvenis. Kiam tunelo kondutas sin malkonsekvence, la regularo ofte estas la kaŭzo, kaj la enkursiga tabelo ofte ne.
Reguloj elektas la tabelon, poste la tabelo elektas la vojon
Ĉiu regulo portas prioritaton, kongruan kondiĉon kaj celan tabelon. La kerno trairas la regulojn laŭ prioritata ordo kaj haltas ĉe la unua kongruo, poste faras ordinaran serĉon de la plej longa prefikso en tiu tabelo. Regulo direktita al malplena tabelo falas al tio, kion elektas la sekva regulo, kaj tiel zorge skribita regulo povas ŝajni fari nenion.
Tial eligo de la ĉefa tabelo malofte klarigas funkciantan VPN-klienton. Klientoj kutime enmetas regulojn ĉe malaltaj prioritataj numeroj, longe antaŭ la defa regulo de la ĉefa tabelo, do la pako neniam atingas la vojon, kiun vi fiksrigardis. Malaltigi metrikon en la ĉefa tabelo ŝanĝas nenion por trafiko, kiu jam estis deturnita.
Regulo ankaŭ povas intence fari prefikson nigra truo aŭ neatingebla. Iuj klientoj aldonas tian regulon kiel sekurigilon, kaj tiam la forĵeto aspektas kiel rompita tunelo anstataŭe ol agordita.
Legu la regularon kiel sinsekvon, ne kiel liston
Eligu la regulojn kun iliaj prioritatoj kaj la tabeloj, al kiuj ili referencas, poste eligu ĉiun tabelon, kiu portas defan aŭ tunelan vojon. La ordo estas la parto, kiu gravas, kaj ĝi estas la parto, kiun ekrankopio kutime preterlasas:
ip rule show ip route show table all | sed -n '1,60p' ip route get 198.51.100.20 from 10.8.0.2 ip route get 198.51.100.20 from 10.8.0.2 mark 0x1
La du lastaj komandoj estas tiuj, kiuj igas teorion observo, ĉar ili demandas, kion la kerno farus por tiu fonto kaj tiu marko. Se la respondo ŝanĝiĝas, kiam la marko ŝanĝiĝas, marka regulo estas enludita kaj ajna testado, kiu preterlasas la markon, testas alian pakon. La ekstera konekto meritas propran regulon. Tunelo, kiu enkursigas la tutan trafikon tra si, devas ekskludi la finpunkton, al kiu ĝi konektiĝas, alie la ĉifritaj pakoj estas resenditaj en la tunelon, kiun ili ĵus forlasis. Plej multaj klientoj enmetas tiun ekskludon aŭtomate, kaj permane redaktita regularo estas la loko, kie ĝi mankas.
Markoj kaj poŝoj: du manieroj, kiel klientoj dividas trafikon
Iuj klientoj markas pakojn en la fajroŝirmilo kaj aldonas regulon, kiu kongruas kun la marko. Aliaj uzas enkursigadon je poŝa nivelo, metante vojon sur la poŝon antaŭ ol ĝi konektiĝas. La unua estas videbla en ip rule; la dua ne, kaj ĝi ne aperos en ĝenerala serĉo.
Se testa programo kondutas sin alie ol la aplikaĵo, kiun ĝi devas reprezenti, kontrolu, ĉu la aplikaĵo metas markon aŭ sin ligas al aparato. Tiu diferenco ne estas mistero, post kiam la mekanismo estas nomita, kaj ĝi klarigas, kial curl el ŝelo kaj retumila langeto povas preni malsamajn vojojn sur la sama maŝino. Ambaŭ teknikoj estas politika enkursigado en la larĝa senco: ili elektas vojon per io alia ol la celo. Neniu el ili rajtigas la trafikon, kaj neniu anstataŭas la fajroŝirmilajn regulojn aŭ la akreditaĵojn, kiujn atendas la samtavolano.
Spuru posedantecon antaŭ ol aldoni plian regulon
Regulojn instalas io. VPN-kliento, reta administrilo kaj permane skribita skripto povas ĉiu aldoni regulojn ĉe lanĉo, kaj rekonekta logiko povas lasi la antaŭan aron malantaŭe. Du malnoviĝintaj reguloj el pli frua profilo daŭre direktos trafikon longe post kiam la profilo estis forigita.
Trovu, kiu procezo posedas la regulon laŭ ĝia prioritato kaj formo, kaj kontrolu, ĉu tiu posedanto reskribas la aron ĉe ĉiu konekto. Se ĝi tion faras, permana regulo aldonita hodiaŭ malaperos morgaŭ, kaj la riparo apartenas al la agordo de la kliento anstataŭ al ŝela historia dosiero. Forviŝi la tutan regularon por testi estas tentiga vojeto kun antaŭvidebla kosto: ĝi ankaŭ forigas la regulojn, kiujn la kliento bezonas por teni sian propran tunelon funkcianta. Forigu unu regulon samtempe, aŭ testu sur maŝino, kiun vi povas restartigi.
Pruvu la amplekson per du fluoj, ne per unu
Korekto estas kontrolita nur per fluo, kiu devus esti trafita, kaj fluo, kiu ne devus. Elektu celon, kiun la politiko enkursigas en la tunelon, kaj unu, kiun ĝi devas lasi ekstere, poste komparu la serĉojn kaj la kaptaĵojn por ambaŭ:
ip route get 198.51.100.20 from 192.0.2.44 ip route get 198.51.100.21 from 192.0.2.44 tcpdump -ni any host 198.51.100.21 and port 443
Kiam la du serĉoj redonas malsamajn interfacojn, la regulo faras ion. Kiam ili redonas la saman interfacon, la regulo kongruas pli vaste ol intencite, kaj tio estas la fuŝo, kiu kviete sendas tutan subreton tra tunelo destinita por unu aplikaĵo.
Notu la prioritatojn de la reguloj kaj la posedan servon en la bileto, kune kun la du testadresoj. La sekva persono tiam havas ripeteblan paron anstataŭ priskribo de simptomo, kaj povas diri en minuto, ĉu politika enkursigado ankoraŭ estas enludita.