Vieno mazgo pašalinimas iš Windows VPN numatytojo maršruto
Viso tunelio profilis valdo numatytąjį maršrutą. Vienam mazgui reikia siauresnio prefikso fiziniame sąsajos sluoksnyje, kuris po kiekvieno prisijungimo pridedamas iš naujo.
Nešiojamasis kompiuteris prisijungia prie biuro VPN, ir viskas eina paskui jį, įskaitant spausdintuvo tinklalapį ir vieną intranetą, kuris atsako tik vietiniame tinkle. Rankiniu būdu sukurtas maršrutas tai sutvarko valandai, tada ryšys nutrūksta, grįžta, ir išimtis dingsta. Su tuneliu viskas gerai: Windows laiko vieną maršrutizavimo lentelę, o VPN adapteris kiekvieno prisijungimo metu perrašo savo dalį toje lentelėje. Išlieka tai, kas yra už paties adapterio įrašų ribų.
Kurį įrašą perima tunelis
Užrašykite lentelę du kartus, kartą su išjungtu tuneliu ir kartą su įjungtu, ir palyginkite numatytąsias eilutes. Kai profilis reikalauja numatytojo prefikso, adapterio įrašas yra plačiausia lentelės eilutė, todėl bet kuri išimtis turi būti siauresnė už jį. Tai aritmetika apie prefikso ilgį, o ne teiginys apie pasitikėjimą ar politiką. Ji taip pat nustato, kurią sąsają išimtis turi įvardyti.
Užsirašykite sąsajos indeksą ir vietinį šliuzą prieš eidami toliau, nes abu pasikeičia, kai mašina prisijungia prie kito tinklo. Toliau pateiktos komandos juos nuskaito iš mašinos, o ne iš atminties.
route print -4
Find-NetRoute -RemoteIPAddress 198.51.100.30
Antroji komanda praneša sąsają ir kitą šuolį, kuriuos tas vienas adresas naudotų dabar, ir tai geriau nei skaityti keturiasdešimt eilučių ir spėlioti. Paleiskite ją prieš prisijungiant ir po to, ir turėsite porą, kurią verta pridėti prie pakeitimo įrašo. Abi išvestys pateikia skaičius, naudojamus likusioje šio puslapio dalyje.
Mazgo maršrutas laimi konkretumu
Ilgiausio prefikso atitikimas nusprendžia nugalėtoją, todėl /32 per fizinį šliuzą nugali numatytąjį per tunelį neliesdamas tunelio. Srautas į tą adresą išeina per vietinę sąsają, o visa kita išlaiko esamą kelią. Tunelis vis dar neša numatytąjį ir tiesiog nustoja būti vienintelis kandidatas tam tikslui. Prefikso ilgis yra vienintelė svirtis, kurią lentelė siūlo, ir šiam darbui to pakanka.
Konkretumas taip pat atmeta akivaizdų aplinkkelį išskirti domeno vardą, nes lentelė lygina adresus, o vienas vardas gali išsiskaidyti į kelis. Pirmiausia išspręskite mazgą, tada nuspręskite, kuris jo adresas nusipelno išimties.
Viskam žemiau tarkime, kad yra ryšys pavadinimu Office, vietinis šliuzas 10.0.0.1 sąsajoje 7 ir paskirties vieta 198.51.100.30. Tai vietos žymekliai, o ne numatytosios reikšmės, ir aukščiau pateiktos komandos pateikia reikšmes, kurias jūsų mašina iš tikrųjų naudoja. Laikykite šią pakeitimo pastabą kartu su pakeitimu, kad kitas skaitytojas nenusirašytų skaičių.
Padarykite, kad maršrutas pergyventų kitą prisijungimą
Windows nesiūlo jokios išskyrimo instrukcijos VPN ryšiui, todėl išimtis turi gyventi fizinėje sąsajoje, kur adapteris jos neperrašys. Komandetas, kuris atrodo kaip atsakymas, daro priešingai: Add-VpnConnectionRoute perkelia prefiksą į tunelį, o tai yra veidrodinis atvejis, kai padalytas profilis turėtų nešti vieną paskirtį, o likusią dalį palikti vietinę. Čia į jį griebtis reiškia, kad srautas, kurį norėjote laikyti lauke, pateks į vidų.
Rankinė forma yra viena komanda. Jos silpnybė yra tinklo pasikeitimas, o ne prisijungimas iš naujo.
route -p add 198.51.100.30 mask 255.255.255.255 10.0.0.1 metric 1 if 7
Tai pergyvena perkrovimą dėka -p ir siunčia vieną adresą per sąsają 7, kol tunelis neša visa kita. Perkelkite nešiojamąjį į kitą tinklą, ir šliuzas bei indeksas pasensta, todėl įrašas tyliai nepavyksta. Užrašykite, kam jis priklauso ir kada jį reikia pašalinti.
Prisijungimo scenarijus yra tvirtesnė versija, nes jis vėl prideda išimtį po kiekvieno ryšio, o ne tikisi, kad įrašas išliko. Dvi eilutės žemiau priklauso tam, kas paleidžia tunelį, o ne prisijungimo scenarijui.
rasdial Office
route add 198.51.100.30 mask 255.255.255.255 10.0.0.1 metric 1 if 7
Kas tik pakelia tunelį, ta yra tinkama vieta antrajai eilutei, ir rasdial grįžta tik po to, kai ryšys nustatytas, todėl maršrutas atsiduria už paties adapterio įrašų. Paleiskite jį dar kartą po pabudimo, nes sustabdymas gali numesti maršrutą ir palikti tunelį pakeltą. Jei užduotis atvirkštinė – įstumti vieną prefiksą į tunelį, o likusią dalį palikti vietinę, tada Add-VpnConnectionRoute yra tinkamas įrankis.
Maršrutizavimas negali pasirinkti proceso
Kartais reikalavimas siauresnis už paskirtį: viena programa turėtų eiti vietiniu keliu, o visa kita likti tunelio viduje. Maršrutizavimas to negali išreikšti, nes jis lygina adresus, o ne procesus. Veikiantis šablonas stumia problemą į paleidiklį.
Laikykite profilį toli nuo numatytojo maršruto ir paleiskite tą vieną programą susietą su vietinės sąsajos adresu, tada išimtimi tampa paleidimo komanda, o tunelis išlaiko tai, ką jau tvarkė. Maršrutizavimo lentelėje niekas nesikeičia, ir todėl tai pergyvena prisijungimus iš naujo. Tai taip pat reiškia, kad tunelis neturi valdyti numatytojo maršruto nuo pat pradžių, tad tai kitas dizainas, o ne lopas ankstesniam.
Jo silpnybė yra operacinė, o ne techninė. Programa visada turi startuoti per apvalkalą, o jei po pabudimo susiejimo trūksta, ji tyliai pasirenka bet kurį lentelės siūlomą kelią. Tai pakenčiama naršyklei, kurią atidarote sąmoningai, ir nepriimtina viskam, kas niekada neturi palikti tunelio.
Ryšiai pagal naudotoją to taip pat neišsprendžia. Windows gali apriboti ryšį paskyra, o maršrutizavimo lentelė lieka visai mašinai, todėl paskyra apribotas ryšys su numatytuoju maršrutu vis tiek peradresuoja kiekvieną mašinos procesą, įskaitant kitas sesijas. Apimtis tampa tikra tik tada, kai maršruto apimtis atitinka paskyrą. Todėl du žmonės, besidalijantys vienu nešiojamuoju, dalijasi viena lentele, o antrasis paveldi tą tunelį, kurį paleido pirmasis.
Patvirtinkite, kad išimtis pergyveno prisijungimą iš naujo
Išbandykite pakeitimą taip, kaip jis nepavyks: atsijunkite, prisijunkite iš naujo, atidarykite naują programą, tada paprašykite vieno adreso, kuris turi likti vietinis, ir vieno, kuris turi naudoti tunelį. Palyginkite abu su Find-NetRoute prisijungusioje būsenoje.
Jei po prisijungimo iš naujo prefikso lentelėje nėra, jis gyvena netinkamame objekte, o ne netinkamame formate. Perkelkite jį į fizinę sąsają ir pakartokite testą. Laikykite abi komandų išvestis kartu su pakeitimo įrašu, nes veikiančios būsenos momentinė kopija vėliau atsako į daugiau klausimų nei pastraipa paaiškinimo. Kitas žmogus norės sužinoti, ką sukūrė prisijungimas, o ne ką jūs ketinote sukurti.