Dva VPN klijenta istovremeno: ko pobjeđuje na zadanoj ruti?
Dva VPN klijenta polažu pravo na zadanu rutu, a pobjeđuje samo jedan. Pročitajte metriku, par /1 i podjelu resolvera prije nego što odaberete redoslijed tunela.
Pokretanje dva VPN klijenta istovremeno je rasprava o rutiranju, a ne postavka privatnosti. Koji god tunel posjeduje specifičniju rutu, prima promet, a drugi ostaje povezan, ali besposlen. Korporativni gateway tada vidi vezu koja dolazi s ličnog izlaza, dok korporativni klijent na vašem računaru još uvijek vidi svaki adapter. Odlučiti koja je od te dvije činjenice važna jest cijela vježba.
Tablica ruta bira jednog pobjednika
Snimite tablicu prije i poslije pokretanja korporativnog klijenta i čitajte kolonu interfejsa, a ne samo odredište. Obična zadana ruta iz vanjskog tunela lako se potiskuje, jer je par /1 specifičniji od /0. Doslovni par 0.0.0.0/1 i 128.0.0.0/1 pokriva cijeli IPv4 prostor u dvije polovine i pobjeđuje svaku pojedinačnu zadanu rutu. Nakon što se instalira, vanjski tunel i dalje izgleda povezan i ne nosi ništa.
ip route show default
ip route show | grep -E '^(0.0.0.0/1|128.0.0.0/1)'Rutiranje po politici može potpuno nadjačati glavnu tablicu, pa čitajte i pravila i rute. Pravilo koje označeni promet šalje u drugu tablicu pobjeđuje prije nego što se glavna tablica uopće pogleda. Tako jedna aplikacija može ostati na fizičkoj vezi dok sve ostalo koristi tunel.
ip rule showWindows to rješava metrikama
Na Windowsu pobjednik je ruta s najnižom metrikom za odredište, a dva klijenta mogu oba instalirati zadanu rutu s različitim metrikama. Čitajte tablicu i konfiguraciju interfejsa zajedno, jer adapter s nižom metrikom nije uvijek onaj koji očekujete. Klijent koji postavlja i metriku interfejsa može pomjeriti zadanu rutu bez dodavanja ijedne rute. Adapter koji izgubi ostaje uključen i jednostavno ne prima ništa.
route print -4
Get-NetIPConfiguration | Select-Object InterfaceAlias, IPv4DefaultGatewayUporedite dva izlaza i imenujte interfejs koji posjeduje 0.0.0.0/0. Ako ga oba klijenta polažu, metrika odlučuje, zbog čega test redoslijeda povezivanja može izgledati nedosljedno na različitim mašinama. Ako nijedan izlaz ne pokazuje zadani gateway, klijent ne radi u punom tunelu i argument lanca je bespredmetan.
Dva posmatrača, dva različita pogleda
Udaljeni gateway vidi jednu vezu koja dolazi s vanjskog izlaza plus sve što klijent prosljeđuje u svoj tunel. Lokalni klijent vidi adaptere, rute i postojanje drugog tunela, jer radi s privilegijama da ih stvori. Razdvajanje tih pogleda je poenta; tvrdnja da klijent ne može primijetiti nije.
Pretpostavite da klijent može nabrojati šta god želi i planirajte za pogled gatewaya umjesto toga. Dizajn koji zavisi od toga da klijent ostane slijep jednu je nadogradnju daleko od kvara.
DNS i IPv6 su mjesta gdje lanac curi
DNS slijedi onu postavku resolvera koja pobijedi, a to nije nužno putanja kojom paketi idu. Korporativni resolver dostignut kroz korporativni tunel dosljedan je s dizajnom; lokalni resolver dostignut izvan njega nije, i otkriva imena koja je tunel trebao sakriti. IPv6 je drugo curenje: dual-stack host nastavlja koristiti IPv6 prema odredištima koja tunel nosi samo preko IPv4. Provjeravajte porodice odvojeno, jer tunel samo za IPv4 ne govori ništa o IPv6 rutama ili resolverima.
ip -6 route show default
resolvectl status | grep -A2 'DNS Servers'Popravite resolver i IPv6 rutu namjerno, umjesto da naslažete drugi tunel odozgo. Dvostruka enkapsulacija također košta MTU, pa je manji unutrašnji MTU prvo što treba isprobati kada se stranice zakoče nakon uspostavljanja lanca. Resolver koji brzo odgovara nije dokaz da je pravi resolver.