VPN у Windows-у се не повезује? Упоредите код са дневником догађаја
Дијалог VPN-а у Windows-у скрива фазу која није успела. Прочитајте код резултата, извуците догађај RasClient за тај покушај и промените само слој који се покварио.
У петак је радило. У понедељак исти Windows клијент одговара дијалогом који каже да покушај повезивања није успео, а реченица испод њега је она коју сте већ видели код десетак неповезаних проблема. Тај дијалог је крај ланца, а не његов почетак. Windows скрива фазу у којој је покушај заиста умро, а два мала доказа је именују: бројчани код резултата и један RasClient догађај из истог минута. Ово је редослед који користим — фиксирајте покушај, прочитајте код, извуците догађај, па промените тачно један слој.
Текст дијалога је последњи корак, а не узрок
Реченица коју читате бира се након што се покушај већ размотао. „Веза је прекинута од стране удаљеног рачунара пре него што је веза успостављена“ појављује се када сервер прекине везу усред преговора, када IPsec није успео пре него што је ваше корисничко име уопште послато, и када политика одбије тунел одмах. Три различита власника, једна реченица. Третирајте формулацију као класу симптома и не дозволите јој да било шта усмерава док се код с њом не сложи.
Оно што још можете да фиксирате је сам покушај. Запишите назив везе, тип тунела сачуван у профилу — PPTP, L2TP/IPsec, SSTP или IKEv2 —, време до секунде и код. Ако нисте сигурни који је протокол стварно радио, отворите %APPDATA%\Microsoft\Network\Connections\Pbk\rasphone.pbk и прочитајте унос уместо да верујете памћењу; профил поново коришћен за нови протокол задржава своје старо приказно име.
Прочитајте број пре него што прочитате речи
Кодови падају у три фазе, и фаза је важнија од тачне формулације: размена аутентификације до које се дошло и која је одбијена, сервер који никада није одговорио, или преговори који су се срушили након што се веза подигла. 691 је прва врста — провера акредитива је прошла и није успела, било због лоше лозинке, закључаног или истеклог налога, или протокола аутентификације који сервер не прихвата. 812 је такође одбијање, али са важећим акредитивима: политика на серверу удаљеног приступа одлучила је против вас. Microsoft одржава канонски списак кодова грешака за dial-up и VPN везе, и вреди прочитати свој број тамо пре него што потражите текст поруке.
809 је супротна класа: ништа се није вратило. То је проблем пута — TCP 443 филтриран за SSTP, GRE блокиран за PPTP, UDP 500 и 4500 или ESP одбачен за IPsec пролаз. Нова лозинка то не може поправити, а ни свеж сертификат. 720 значи да се веза подигла и да PPP никада није завршио преговоре, што указује на неусклађеност протокола или сервер који није могао да додели адресу. 789, или 13801 на IKEv2, је идентитет унутар IPsec-а: сертификат чији се субјекат не подудара са именом које бирате, неповерљив ланац, или унапред подељени кључ који се разликује између два краја.
Извуците RasClient догађај за исти минут
У Прегледачу догађаја Windows Logs > Application филтриран по извору RasClient је прво место за поглед. Microsoft-ов опис грешке 720 упућује на догађај 20227 у том дневнику. Исти добављач емитује друге идентификаторе за друге исходе, зато читајте поруку и уграђени код резултата уместо да ID третирате као дијагнозу; генерички дијалог плус 20227 који носи 720 већ је много ужа прича.
Из PowerShell-а, без кликања кроз GUI:
Get-WinEvent -FilterHashtable @{
LogName = 'Application'
ProviderName = 'RasClient'
StartTime = (Get-Date).AddMinutes(-15)
} | Format-List TimeCreated, Id, Message
Празен резултат је информативан. Обично значи да бирање никада није отишло довољно далеко да би RAS ишта забележио, или да софтвер који није успео уопште није изворни клијент — клијенти трећих страна држе сопствену дијагностику и често не пишу ништа у Application дневник. Проверите дневник добављача пре него што закључите да је евидентирање догађаја покварено.
Изградите једну временску линију уместо гомиле догађаја
Петље поновних покушаја стварају шум. Пет аутоматских поновних повезивања оставља групу догађаја, а искушење је читати их као један низ са једним узроком. То је пет одвојених покушаја, и само су неки од њих стигли до сервера. Узмите прозор од два или три минута, један назив везе, и попишите сваки догађај са његовим сопственим кодом пре него што било шта протумачите.
Затим питајте где се покушај зауставио. Када gateway или позадина за аутентификацију не држи никакав запис за ту временску ознаку, клијент га никада није достигао, и гледате проблем доступности. Када позадина показује захтев и одбијање, одлука је донета тамо, и примењује се класа акредитива или политике. Упоредите сатове пре него што упоредите времена: клијенти пријављују локално време, многи gateway-и бележе UTC, а помак ће учинити да савршено корелиран пар изгледа неповезано.
За поновљиво снимање, бирајте из командне линије и пустите је да испише резултат:
rasdial "Office VPN"
rasdial "Office VPN" /disconnect
Конзола показује број који GUI скрива иза пријатељског текста, а покретање двапут говори вам да ли је код стабилан или повремен.
Шта вам свака фаза говори да промените
Именовање фазе је корисно само ако скуп промена своди на један слој:
691— аутентификација: EAP метода коју клијент нуди насупрот оној коју сервер прихвата, стање налога, истек лозинке, дозвола за dial-in.812— политика сервера: политика удаљеног приступа или NPS правило које одговара овом кориснику и овом временском прозору.809— доступност: firewall правила на путу, NAT и пролаз протокола, порт који одабрани тип тунела тражи.720— PPP преговори: неусклађеност протокола аутентификације, додела адресе, PPP поставка на страни сервера.789/13801— IPsec идентитет: субјекат сертификата насупрот имену које бирате, ланац поверења, унапред подељени кључ.
Промените једно од тога, поново тестирајте исти профил и запишите нови код. Другачији код након промене је напредак, а не противречност: преместили сте квар на каснију фазу, и тако изгледа поправљање вишефазног руковања. Оно што не бисте требали да радите је да промените firewall, сертификат и лозинку у једном седењу и затим припишете заслугу ономе што је дошло последње.
Делите доказе, не окружење
Поруке догађаја су богатије него што изгледају. Носе назив везе, налог, често интерно име или адресу gateway-а, а понекад и отисак сертификата. Држите оригинал тамо где му је место и направите засебну редиговану копију за било кога другог; поновно куцање временске линије по памћењу губи управо детаље који је чине корисном.
Примопредаја која ће бити обрађена треба пет поља: код, фазу којој припада, клијент и тип тунела, временску ознаку са њеном временском зоном, и да ли је gateway уопште видео захтев. Све остало је необавезно. Са тих пет следећа особа може разликовати расправу о акредитивима од расправе о рутирању без понављања истраге.
Пре него што било шта затворите, поновите покушај на истом профилу и потврдите где код сада пада. Успех то завршава; другачији квар значи да је изворна фаза поправљена и следећа је у вашим рукама.