Po klaidos atidarykite Windows VPN dialogą ir jis duos jums numerį bei sakinį, o sakinys paprastai būna mažiau naudinga pusė. Numeris nurodo, kuris ryšio etapas nepavyko, o etapas lemia, kurį žurnalą, kurį nustatymą ir kurią komandą žiūrėti toliau. Etapų perėjimas iš eilės užtrunka apie dešimt minučių ir užkerta kelią įprastai sekai: adapterių perrinkimui, protokolų keitimui ir dėklo atstatymui, kad būtų sutvarkyta paskyra, kuriai niekada nebuvo leista skambinti.

Skaitykite numerį kaip etapą

Vietinis ryšys praeina keturis etapus. Jis pasiekia serverį ir užmezga ryšį, derasi dėl saugumo, autentifikuoja naudotoją ir taiko adresavimą bei maršrutizavimą. Kiekviename jų gedimas palieka skirtingus įrodymus, o vienam etapui priklausantis kodas nieko naudingo nepasako apie kitus.

Klaida, kurios reikia vengti, yra kodo traktavimas kaip sunkumo laipsnio. Ryšio gedimas ir autorizacijos gedimas abu skaitomi kaip "nepavyko prisijungti", ir daugiau nieko bendra jie neturi. Sunkumas sako, kiek kas skubu; etapas sako, ką atidaryti.

Code familyStageWhere the evidence lives
829, 703Link or dial completionClient event log, remote listener reachability
720PPP negotiation and miniport bindingAdapter state, bindings, client log detail
691, 649, 812Identity and authorizationGateway or authentication server decision
Connected, no trafficAddressing, routing and resolutionRoute table and resolver configuration

Pirmas etapas: ryšys ir skambučio bandymas

829 reiškia, kad pagrindinis ryšys nutrūko. Jis nepasako, ar nuotolinė šalis nustojo atsakyti, ar tarpinė priemonė nutraukė sesiją, ar kliento politika ją uždarė. Skambučio užbaigimo kodas, pavyzdžiui, 703, yra dar ankstesnis: bandymas net nepasiekė ryšio, o tai paprastai nurodo profilį, paslaugos būseną ar vietinę politiką.

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

Įvykių užklausa yra ta dalis, kurią žmonės praleidžia. Kliento pusės įrašas su laiko žyma ir sąsajos pavadinimu vertingesnis už dialogą, nes jis pasako, ar bandymas apskritai išėjo iš įrenginio. Nėra įrašo ir nėra klausytojo atsakymo — tai pasiekiamumo problema, ir joks kliento redagavimas to nepakeis.

Jei tas pats profilis veikia kitame tinkle, sustokite čia. Kodas apibūdina kelio sąlygą, o ne konfigūracijos klaidą, ir kitas naudingas palyginimas yra du įrašai, o ne dar vienas perrinkimas.

Antras etapas: PPP ir mini prievado susiejimas

720 yra tarp ryšio ir naudotojo. Tunelis pakilo, o tada PPP sluoksnis negalėjo suderėti adreso ar valdymo protokolo, o tai dažnai yra susiejimo problema kliente, o ne atmesti prisijungimo duomenys. Šis skirtumas yra visa kodo vertė: jis sako, kad prisijungimo duomenų niekada nepasiekta, todėl paskyra nėra įtariamasis.

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

Tų dviejų išvesčių skaitymas informatyvesnis už bet ko atstatymą. Mini prievadas, kuris yra, bet nepasileidęs, arba kito programinio paketo išjungtas protokolo susiejimas sukuria būtent šio etapo gedimą. Abi problemas galima ištaisyti neliečiant likusio dėklo. Visiškas atstatymas, priešingai, pašalina adresavimą ir filtravimo būseną, kurie neturėjo nieko bendra su gedimu.

Trečias etapas: tapatybė ir autorizacija

691 reiškia, kad prisijungimo duomenys atmesti. 649 reiškia, kad paskyrai neleidžiama skambinti, o 812 reiškia, kad nuotolinės prieigos politika atmetė ryšį. Tai sprendimai, o ne transporto gedimai, ir klientas gali tik apie juos pranešti.

Įrodymai yra kitoje pusėje. Paprašykite tinklų sietuvos operatoriaus to bandymo ta laiko žyma ir atitikusios politikos; paklauskite katalogo savininko, ar paskyra turi skambinimo leidimą ir ar yra grupėje, kurios reikalauja politika. Tunelio tipo keitimas ar kliento perrinkimas negali pakeisti sprendimo, priimto dėl tapatybės.

Naudingas įprotis šiame etape yra įrašyti tikslią paskyros eilutę į bilietą, įskaitant bet kokį domeno priešdėlį. Nuostabiai daug 691 atvejų yra neteisingam domenui išsaugoti prisijungimo duomenys, ir tai matyti paskyros eilutėje, o ne protokolo nustatymuose.

Ketvirtas etapas: prisijungta, ir niekas neveikia

Ryšys gali būti užbaigtas ir vis tiek būti bevertis. Jis turi adresą, klientas praneša apie sėkmę, o kiekviena programos užklausa baigiasi skirtuoju laiku. Niekas dialoge to neatspindi, ir nėra kodo, kurį būtų galima pasižiūrėti. Tuo metu dialogas baigtas, o naudingi įrodymai yra kitur.

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

Jei maršruto nėra, serveris jo neįstūmė arba klientas jį numetė. Jei maršrutas yra, o vardas nepavyksta, problema yra sprendime. Jei abu veikia, o programa vis tiek nepavyksta, jūs jau už tunelio ir pačios programos konfigūracijoje.

Laikykite pakeitimus viename sluoksnyje vienam bandymui. Kiekvienas taisymas prieš kitą bandymą tampa kito kodo konteksto dalimi, o kodas, aprašantis jūsų paskutinį taisymą, yra blogesnis nei jokio kodo.

Vienas bandymas, vienas pakeitimas, vienas įrašas

Kad ir koks būtų etapas, įraše turi būti kodas, pranešimas, profilio pavadinimas, laiko žyma ir tinklas, kuriame buvote. Penki laukai, ir kiekvienas jų jau prieš jus dialoge ar kliento žurnale. Ta aibė pakankamai maža, kad ją įklijuotumėte į bilietą, ir pakankamai konkreti, kad kas nors kitas ją atkartotų.

Tada padėkite tą laiko žymą šalia įrašo kitoje pusėje. Lentelė viršuje šio puslapio nurodo, kuriam etapui priklauso kiekvienas neatitikimas. Be antro įrašo kodas tik susiaurina paiešką; su juo etapas nusprendžiamas. Būtent palyginimas paverčia numerį diagnoze, o ne spėjimu.

Šis įprotis apima beveik kiekvieną vietinį Windows VPN gedimą, ir nė viena šaka nereikalauja ko nors perrinkti. Dialogas visada sakydavo, kurį turite; darbas yra atsisakyti visus juos traktuoti kaip tą pačią problemą.

Susiję straipsniai