Kódy chýb VPN v Windows: ktorá fáza zlyhala a čo logovať
829, 703, 720, 691, 649: každé číslo pomenúva fázu a každá fáza má svoje vlastné dôkazy. Zaznamenajte jeden pokus, porovnajte log brány, zmeňte jednu vrstvu.
Otvorte dialóg VPN v Windows po zlyhaní a dostanete číslo a vetu, pričom veta je zvyčajne tá menej užitočná polovica. Číslo označuje, ktorá fáza spojenia zlyhala, a fáza určuje, ktorý log, ktoré nastavenie a ktorý tím pozerať ďalej. Prejsť fázy v poradí trvá približne desať minút a zabráni známej postupnosti: preinštalovanie adaptérov, prepínanie protokolov a resetovanie zásobníka, aby sa opravil účet, ktorému sa nikdy nedovolilo vytočiť číslo.
Čítajte číslo ako fázu
Natívne spojenie prechádza štyrmi míľnikmi. Dosiahne server a nadviaže spojenie, dohodne zabezpečenie, overí používateľa a aplikuje adresovanie a smerovanie. Zlyhanie v každom z nich zanecháva iné dôkazy a kód patriaci jednej fáze nehovorí nič užitočné o ostatných.
Chybou, ktorej sa treba vyhnúť, je brať kód ako stupeň závažnosti. Zlyhanie spojenia aj zlyhanie autorizácie sa čítajú ako "nepodarilo sa pripojiť" a nič iné spoločné nemajú. Závažnosť hovorí, aké naliehavé niečo je; fáza hovorí, čo otvoriť.
| Code family | Stage | Where the evidence lives |
|---|---|---|
| 829, 703 | Link or dial completion | Client event log, remote listener reachability |
| 720 | PPP negotiation and miniport binding | Adapter state, bindings, client log detail |
| 691, 649, 812 | Identity and authorization | Gateway or authentication server decision |
| Connected, no traffic | Addressing, routing and resolution | Route table and resolver configuration |
Prvá fáza: spojenie a pokus o vytočenie
829 znamená, že podkladové spojenie spadlo. Nehovorí, či vzdialená strana prestala odpovedať, či medziľahlé zariadenie zabilo reláciu alebo či ju zatvorila politika na klientovi. Kód dokončenia vytáčania ako 703 je ešte skorší: pokus sa nikdy nedostal k spojeniu, čo zvyčajne ukazuje na profil, stav služby alebo lokálnu politiku.
Get-VpnConnection -Name 'Corp' | Select-Object Name,ServerAddress,TunnelType,AuthenticationMethod,ConnectionStatus
Test-NetConnection -ComputerName vpn.example.net -Port 443
Get-WinEvent -LogName Application -MaxEvents 200 | Where-Object ProviderName -match 'RasClient' | Select-Object -First 15 TimeCreated,Id,Message
Dopyt na udalosti je časť, ktorú ľudia preskakujú. Záznam na strane klienta s časovou pečiatkou a názvom rozhrania má väčšiu hodnotu ako dialóg, pretože hovorí, či pokus vôbec opustil stroj. Žiadny záznam a žiadna odpoveď poslucháča znamená problém s dostupnosťou a žiadna úprava klienta to nezmení.
Ak rovnaký profil funguje v inej sieti, zastavte sa tu. Kód opisuje stav cesty, nie chybu konfigurácie, a ďalším užitočným porovnaním sú dva záznamy, nie ďalšia preinštalácia.
Druhá fáza: PPP a väzba miniportu
720 stojí medzi spojením a používateľom. Tunel sa zdvihol a potom vrstva PPP nedokázala dohodnúť adresu alebo riadiaci protokol, čo je často problém väzby na klientovi, a nie odmietnuté prihlasovacie údaje. Tento rozdiel je celá hodnota kódu: hovorí, že prihlasovacie údaje neboli nikdy dosiahnuté, takže účet nie je podozrivý.
Get-NetAdapter -IncludeHidden | Where-Object InterfaceDescription -match 'WAN Miniport' | Select-Object Name,Status,ifIndex
Get-NetAdapterBinding | Where-Object ComponentID -match 'ms_pptp|ms_l2tp|ms_sstp|ms_agile' | Select-Object Name,ComponentID,Enabled
Čítanie týchto dvoch výstupov je poučnejšie než resetovanie čohokoľvek. Miniport, ktorý existuje, ale nie je spustený, alebo väzba protokolu vypnutá iným softvérom, produkuje presne zlyhanie tejto fázy. Obe sa dajú opraviť bez zásahu do zvyšku zásobníka. Úplný reset naopak odstráni adresovanie a stav filtrovania, ktoré s poruchou nemali nič spoločné.
Tretia fáza: identita a autorizácia
691 znamená, že prihlasovacie údaje boli odmietnuté. 649 znamená, že účet nemá povolenie vytočiť číslo, a 812 znamená, že politika vzdialeného prístupu spojenie odmietla. Sú to rozhodnutia, nie transportné poruchy, a klient ich môže len nahlásiť.
Dôkazy sú na druhej strane. Požiadajte operátora brány o pokus v tej časovej pečiatke a o politiku, ktorá sedela; spýtajte sa vlastníka adresára, či má účet oprávnenie na vytočenie a či je v skupine, ktorú politika vyžaduje. Zmena typu tunela alebo preinštalovanie klienta nemôže zmeniť rozhodnutie prijaté o identite.
Užitočným zvykom v tejto fáze je zapísať do tiketu presný reťazec účtu vrátane prípadného prefixu domény. Prekvapivo mnoho prípadov 691 sú uložené prihlasovacie údaje pre nesprávnu doménu, a to je vidieť v reťazci účtu, nie v nastaveniach protokolu.
Štvrtá fáza: pripojené a nič nefunguje
Spojenie sa môže dokončiť a napriek tomu byť nepoužiteľné. Má adresu, klient hlási úspech a každá požiadavka aplikácie vyprší. Nič v dialógu to neodráža a nie je žiadny kód na dohľadanie. V tom momente je dialóg u konca a užitočné dôkazy sú inde.
Get-NetRoute -DestinationPrefix 10.24.0.0/16 | Select-Object DestinationPrefix,NextHop,InterfaceAlias
Resolve-DnsName files.corp.example.internal
Test-NetConnection -ComputerName 10.24.6.15 -Port 445
Ak trasa chýba, server ju neposlal alebo ju klient zahodil. Ak trasa existuje a názov zlyháva, problémom je preklad názvov. Ak obe fungujú a aplikácia stále zlyháva, ste za tunelom a v konfigurácii samotnej aplikácie.
Držte zmeny na jednej vrstve na test. Každá úprava pred ďalším pokusom sa stane súčasťou kontextu ďalšieho kódu a kód, ktorý opisuje vašu poslednú úpravu, je horší ako žiadny kód.
Jeden pokus, jedna zmena, jeden záznam
Nech je fáza akákoľvek, záznam by mal obsahovať kód, správu, názov profilu, časovú pečiatku a sieť, v ktorej ste boli. Päť polí a každé z nich už máte pred sebou v dialógu alebo v logu klienta. Tá sada je dosť malá na vloženie do tiketu a dosť konkrétna na to, aby ju niekto iný zopakoval.
Potom položte tú časovú pečiatku vedľa záznamu na druhej strane. Tabuľka pri hornej časti tejto stránky hovorí, ktorej fáze patrí každá nezhoda. Bez druhého záznamu kód len zužuje hľadanie; s ním je fáza rozhodnutá. Práve porovnanie mení číslo na diagnózu, a nie na dohad.
Tento zvyk pokrýva takmer každú natívnu poruchu VPN v Windows a žiadna z vetiev nevyžaduje čokoľvek preinštalovať. Dialóg vám vždy hovoril, ktorú máte; práca je v odmietnutí brať ich všetky ako ten istý problém.