Кодови за грешки на 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, и ниту една гранка не бара преинсталирање на нешто. Дијалогот отсекогаш ви кажуваше кој го имате; работата е да одбиете да ги третирате сите како ист проблем.