Коды памылак VPN у Windows: які этап не ўдаўся і што лагіраваць
829, 703, 720, 691, 649: кожны нумар называе этап, і ў кожнага этапа свая доказная база. Зафіксуйце адну спробу, параўнайце лог шлюза, змяніце адзін узровень.
Адкрыйце дыялог VPN у Windows пасля збою — ён дасць вам нумар і сказ, прычым сказ звычайна менш карысная палова. Нумар паказвае, які этап злучэння не ўдаўся, а этап вызначае, які лог, які настрой і якую каманду глядзець далей. Паслядоўнае праходжанне этапаў займае каля дзесяці хвілін і прадухіляе знаёмую паслядоўнасць: пераўсталёўку адаптараў, змену пратаколаў і скід стэка, каб выправіць уліковы запіс, якому ніколі не дазвалялі падключэнне.
Чытайце нумар як этап
Уласнае злучэнне праходзіць праз чатыры вехі. Яно дасягае сервера і ўсталёўвае сувязь, узгадняе бяспеку, аўтэнтыфікуе карыстальніка і ўжывае адрасацыю з маршрутызацыяй. Збой на кожнай з іх пакідае розныя доказы, а код, які належыць аднаму этапу, не кажа нічога карыснага пра іншыя.
Памылка, якой трэба пазбягаць, — ставіцца да кода як да ступені сур'ёзнасці. Збой сувязі і збой аўтарызацыі абодва чытаюцца як "не ўдалося падключыцца", і больш нічога агульнага ў іх няма. Ступень сур'ёзнасці кажа, наколькі тэрмінова; этап кажа, што адкрываць.
| 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 |
Этап першы: сувязь і спроба падключэння
829 азначае, што базавая сувязь абарвалася. Код не кажа, ці далёкі партнёр перастаў адказваць, ці прамежкавы вузел забіў сеанс, ці палітыка на кліенце закрыла яго. Код завяршэння падключэння, такі як 703, яшчэ ранейшы: спроба не дайшла да сувязі, што звычайна паказвае на профіль, стан службы або лакальную палітыку.
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
Запыт падзей — гэта тое, што людзі прапускаюць. Запіс на баку кліента з часавай меткай і назвай інтэрфейсу каштоўнейшы за дыялог, бо ён кажа, ці спроба ўвогуле пакінула машыну. Няма запісу і няма адказу слухача — гэта праблема дасягальнасці, і ніякае рэдагаванне кліента яе не зменіць.
Калі той жа профіль працуе ў іншай сетцы, спыніцеся тут. Код апісвае ўмову шляху, а не памылку канфігурацыі, і наступнае карыснае параўнанне — два здымкі, а не чарговая пераўсталёўка.
Этап другі: PPP і прывязка мініпорта
720 знаходзіцца паміж сувяззю і карыстальнікам. Тунель узняўся, і потым узровень PPP не змог узгадніць адрас або пратакол кіравання, што часта з'яўляецца праблемай прывязкі на кліенце, а не адхіленымі ўліковымі данымі. Гэтае адрозненне — уся каштоўнасць кода: ён кажа, што ўліковыя даныя не былі дасягнуты, таму ўліковы запіс не падазраваны.
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
Чытанне гэтых двух вывадаў інфарматыўнейшае за скід чаго заўгодна. Мініпорт, які прысутнічае, але не запушчаны, або прывязка пратакола, адключаная іншай праграмай, даюць менавіта збой гэтага этапа. Абодва выпраўляюцца без закранання рэшты стэка. Поўны скід, наадварот, выдаляе стан адрасацыі і фільтрацыі, які не меў дачынення да няспраўнасці.
Этап трэці: ідэнтычнасць і аўтарызацыя
691 азначае, што ўліковыя даныя адхілены. 649 азначае, што ўліковаму запісу не дазволена падключацца, а 812 — што палітыка аддаленага доступу адхіліла злучэнне. Гэта рашэнні, а не збоі транспарту, і кліент можа толькі паведаміць пра іх.
Доказы на іншым баку. Папрасіце ў аператара шлюза спробу на гэтай часавай метцы і палітыку, якая супала; спытайце ўладальніка каталога, ці мае ўліковы запіс дазвол на падключэнне і ці ўваходзіць ён у групу, якую патрабуе палітыка. Змена тыпу тунеля або пераўсталёўка кліента не могуць змяніць рашэнне, прынятае адносна ідэнтычнасці.
Карысная звычка на гэтым этапе — запісаць у тыкет дакладны радок уліковага запісу, уключаючы любы прэфікс дамена. Дзіўна вялікая колькасць выпадкаў 691 — гэта захаваныя ўліковыя даныя для няправільнага дамена, і гэта бачна ў радку ўліковага запісу, а не ў настройках пратакола.
Этап чацвёрты: падключана, і нішто не працуе
Злучэнне можа завяршыцца і ўсё роўна быць бескарысным. Яно трымае адрас, кліент паведамляе пра поспех, а кожны запыт праграмы сканчаецца тайм-аўтам. Нішто ў дыялогу гэтага не адлюстроўвае, і няма кода, каб яго паглядзець. У гэты момант дыялог скончаны, а карысныя доказы ў іншым месцы.
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
Калі маршрут адсутнічае, сервер яго не праштурхаў або кліент яго скінуў. Калі маршрут ёсць, а імя не развязваецца, праблема ў развязанні. Калі працуюць абодва, а праграма ўсё яшчэ падае, вы ўжо за тунелем і ў канфігурацыі самой праграмы.
Трымайце змены на адным узроўні за адзін тэст. Кожная праўка, зробленая перад наступнай спробай, становіцца часткай кантэксту наступнага кода, а код, які апісвае вашу апошнюю праўку, горш за адсутнасць кода.
Адна спроба, адна змена, адзін запіс
Які б ні быў этап, запіс павінен утрымліваць код, паведамленне, назву профілю, часавую метку і сетку, у якой вы былі. Пяць палёў, і кожнае з іх ужо перад вамі ў дыялогу або логу кліента. Гэты набор дастаткова малы, каб уставіць у тыкет, і дастаткова канкрэтны, каб іншы чалавек мог узнавіць.
Затым пастаўце гэтую часавую метку побач з запісам на іншым баку. Табліца ўверсе гэтай старонкі кажа, якому этапу належыць кожнае разыходжанне. Без другога запісу код толькі звужвае пошук; з ім этап вызначаны. Параўнанне — гэта тое, што ператварае нумар у дыягназ, а не здагадку.
Гэтая звычка ахоплівае амаль кожную ўласную няспраўнасць VPN у Windows, і ні адна галіна не патрабуе пераўсталёўкі чаго-небудзь. Дыялог заўсёды казаў, якая з іх у вас; праца ў тым, каб адмовіцца разглядаць усе іх як адну праблему.