Usmjeravanje podmreže aplikacije očigledan je dio split tunela i nije cijeli posao. Resolver često stoji na drugoj adresi od aplikacije kojoj služi, pa radni tunel može ostaviti pretragu izvan njega. Profil koji nosi 10.80.0.0/16 i ništa drugo šalje upit za 10.90.0.53 kroz lokalno sučelje, gdje privatna zona ne postoji. Dodajte put do resolvera, pa provjerite drugu polovinu problema: koji server klijent zapravo bira.

Mit: jedna ruta pokriva cijelu uslugu

Split tunnel je popis odredišta koja idu kroz vezu, a ne opis usluge. Podmreža aplikacije i adresa resolvera su dva odredišta, a profil može nositi jedno bez drugog. Kad se to dogodi, aplikacija je dostupna po adresi dok njezino ime ne uspijeva, što izgleda kao kvar DNS-a, a ne kao praznina u usmjeravanju.

Ni podmreža oko resolvera nije automatski pokrivena. Ruta hosta na jednu adresu dovoljna je za taj resolver i ne otvara njegove susjede. U tome je smisao rute hosta: uska po zamisli i lako se zaboravi kad se sljedeća usluga pojavi u istoj podmreži.

Tri stvari moraju vrijediti da bi pretraga radila: klijent usmjerava adresu resolvera kroz tunel, pristupnik prihvaća i prosljeđuje taj zahtjev, a resolver prihvaća izvor koji primi. Odgovor se također mora vratiti dogovorenim putem. Ako bilo što od toga nedostaje, simptom je isti, zato tablicu adresa vrijedi zapisati prije nego što se dotakne konfiguracija.

Odredite koje adrese profil mora nositi

Navedite odredišta po redu: mrežu aplikacije, adresu resolvera i javnu krajnju točku koja završava sam tunel. Treća se nikada ne smije usmjeriti u tunel, jer vanjska veza treba put koji postoji prije tunela.

DestinationCoverage this example needs
Application network10.80.0.0/16 through the VPN
Private resolver10.90.0.53/32 through the VPN
Public VPN endpointNormal internet path, outside the tunnel

Uključite i UDP i TCP za DNS, jer se od implementacija očekuje da podrže TCP uz UDP, a blokiran put TCP-a daje spore, djelomične kvarove umjesto čistih. Ako se privatna zona poslužuje i preko IPv6, ekvivalentna iznimka za hosta koristi IPv6 adresu i prefiks i zaseban je unos.

Zapišite što profil već pokriva prije nego što išta dodate. Dvostruka ruta je bezopasna, ali neočekivana postojeća ruta govori da je profil napravljen za drugi plan adresa od onoga koji ste dobili.

Dodajte rutu hosta kroz vlasnika veze

Za lokalno upravljani izvorni Windows profil ruta pripada vezi, a ne globalnoj tablici usmjeravanja stroja. Prvo pregledajte dodavanje, pa ga primijenite s istim opsegom koji profil koristi.

Add-VpnConnectionRoute -ConnectionName 'Office VPN' -DestinationPrefix '10.90.0.53/32' -WhatIf
Get-VpnConnection -Name 'Office VPN' | Select-Object -ExpandProperty Routes

Prva naredba pregledava promjenu bez instaliranja ičega, a druga navodi rute koje profil trenutačno nosi. Microsoftova referenca za Add-VpnConnectionRoute dokumentira opsege za pojedinog korisnika i sve korisnike; profil za sve korisnike treba vlastiti parametar opsega, a naredba za pojedinog korisnika na profilu za sve korisnike ne uspijeva ili završi na pogrešnom mjestu.

Kad se profilom upravlja ili dolazi od klijenta dobavljača, promjena pripada tom vlasniku. Slaganje trajne sistemske rute na politiku veze funkcionira dok se politika ponovno ne primijeni i ruta ne nestane, što se obično događa tijekom poziva podršci, a ne tijekom testiranja. Taj je kvar tih: ruta nestane, ime se prestane razrješavati i nitko ne poveže dva događaja. Stavite promjenu u vlasnikov vlastiti zapis da je sljedeća ponovna primjena nosi umjesto da je briše.

Nakon primjene ponovno povežite profil umjesto da pretpostavite da je ruta stupila na snagu. Promjene ruta na živućoj vezi ne uhvate se uvijek, a ponovno povezivanje također reproducira stanje koje će vaši korisnici stvarno imati.

Provjerite koji je resolver klijent stvarno rabio

Ruta kontrolira pakete upućene resolveru. Ne odlučuje koja imena tamo treba poslati i taj je odabir zaseban mehanizam. U Windowsu djelotvorna pravila prostora imena mogu odabrati resolver po domeni, dok DNS postavke profila daju zadano. Ta se dva sloja mogu razilaziti bez ikakve pogreške, zato je izravan upit samo pola dokaza.

Get-DnsClientNrptPolicy
Resolve-DnsName app.svc.example -Server 10.90.0.53 -Type A

Prva naredba ispisuje važeću politiku prostora imena, a druga pita privatni resolver izravno za ime aplikacije. Izravan odgovor dokazuje da put i resolver rade; ne dokazuje da je aplikacijina vlastita pretraga odabrala taj server. Usporedite ga s uobičajenom pretragom istog imena i s odgovorom koji aplikacija dobije.

Uzmite u obzir predmemorije i sigurni DNS na razini preglednika, koji može posve zaobići sistemski resolver za imena koja je korisnik upisao. Sufiks pretraživanja još je jedna obmana: proširuje kratko ime u potpuno kvalificirano i nema veze s tim koji server odgovara.

Na kraju se ponovno povežite i ponovite uobičajenu pretragu, pa potvrdite da obično pregledavanje i dalje slijedi odobrenu politiku. Zamjena privatnog resolvera javnim da bi se razriješilo nepovezano ime nije popravak i tiho premješta privatne upite tamo gdje nikada nisu trebali ići.

Povezani članci