Gumagana ito noong Biyernes. Noong Lunes ang parehong kliyente ng Windows ay sumasagot ng dialog na nagsasabing nabigo ang pagtatangkang kumonekta, at ang pangungusap sa ilalim nito ay isa na nakita mo na para sa dose-dosenang walang kaugnayang problema. Ang dialog na iyon ay dulo ng isang kadena, hindi ang simula. Itinatago ng Windows ang yugto kung saan talagang namatay ang pagtatangka, at dalawang maliit na ebidensya ang nagbibigay ng pangalan nito: ang numeric na result code at isang RasClient event mula sa parehong minuto. Ito ang pagkakasunod-sunod na ginagamit ko — i-pin ang pagtatangka, basahin ang code, kunin ang event, pagkatapos ay baguhin ang eksaktong isang layer.

Ang teksto ng dialog ay ang huling hakbang, hindi ang sanhi

Ang pangungusap na binabasa mo ay pinipili pagkatapos nang lumadlad ang pagtatangka. Lumalabas ang "Ang koneksyon ay tinapos ng malayong computer bago pa maitatag ang koneksyon" kapag ang server ay nagbaba ng telepono sa gitna ng negosasyon, kapag nabigo ang IPsec bago pa man maipadala ang iyong username, at kapag tinanggihan ng isang patakaran ang tunnel nang tuluyan. Tatlong magkaibang may-ari, isang pangungusap. Tratuhin ang pananalita bilang isang klase ng sintomas at huwag hayaang gabayan nito ang anuman hanggang sumang-ayon ang code dito.

Ang natitirang maaari mong i-pin ay ang pagtatangka mismo. Isulat ang pangalan ng koneksyon, ang uri ng tunnel na nakaimbak sa profile — PPTP, L2TP/IPsec, SSTP o IKEv2 —, ang oras hanggang sa segundo, at ang code. Kung hindi ka sigurado kung aling protocol ang talagang tumakbo, buksan ang %APPDATA%\Microsoft\Network\Connections\Pbk\rasphone.pbk at basahin ang entry sa halip na magtiwala sa memorya; ang profile na muling ginamit para sa bagong protocol ay pinapanatili ang lumang display name nito.

Basahin ang numero bago basahin ang mga salita

Ang mga code ay nahuhulog sa tatlong yugto, at mas mahalaga ang yugto kaysa sa eksaktong pananalita: isang palitan ng authentication na naabot at tinanggihan, isang server na hindi kailanman sumagot, o isang negosasyon na gumuho pagkatapos umangat ang link. 691 ang unang uri — tumakbo ang pagsusuri ng kredensyal at nabigo, maging dahil sa maling password, naka-lock o nag-expire na account, o protocol ng authentication na hindi tinatanggap ng server. 812 ay pagtanggi rin, ngunit may wastong kredensyal: isang patakaran sa server ng remote access ang nagpasya laban sa iyo. Pinapanatili ng Microsoft ang kanonikal na listahan ng mga error code para sa dial-up at VPN na koneksyon, at sulit na basahin doon ang iyong numero bago hanapin ang teksto ng mensahe.

809 ang kabaligtaran na klase: walang bumalik. Ito ay problema sa landas — TCP 443 na sinasala para sa SSTP, GRE na hinaharangan para sa PPTP, UDP 500 at 4500 o ESP na itinatapon para sa pagpasa ng IPsec. Hindi ito kayang ayusin ng bagong password, at hindi rin ng bagong certificate. 720 ay nangangahulugang umangat ang link at hindi kailanman natapos ng PPP ang negosasyon, na tumutukoy sa hindi pagtutugma ng protocol o server na hindi makapaglaan ng address. 789, o 13801 sa IKEv2, ay pagkakakilanlan sa loob ng IPsec: isang certificate na ang subject ay hindi tumutugma sa pangalang dinial mo, isang hindi pinagkakatiwalaang kadena, o isang pre-shared key na naiiba sa dalawang dulo.

Kunin ang RasClient event para sa parehong minuto

Sa Event Viewer, ang Windows Logs > Application na sinasala ayon sa source na RasClient ang unang lugar na titingnan. Ang sulatin ng Microsoft tungkol sa error 720 ay tumutukoy sa event na 20227 sa log na iyon. Ang parehong provider ay naglalabas ng ibang mga identifier para sa ibang resulta, kaya basahin ang mensahe at ang nakapaloob na result code sa halip na ituring ang ID bilang diagnosis; isang generic na dialog at isang 20227 na may dalang 720 ay mas makitid nang kuwento.

Mula sa PowerShell, nang hindi nagki-click sa GUI:

Get-WinEvent -FilterHashtable @{
  LogName      = 'Application'
  ProviderName = 'RasClient'
  StartTime    = (Get-Date).AddMinutes(-15)
} | Format-List TimeCreated, Id, Message

Ang walang laman na resulta ay nagbibigay-impormasyon. Karaniwan itong nangangahulugang hindi kailanman umabot nang sapat ang dial para may maitala ang RAS, o ang software na nabigo ay hindi ang native na kliyente — ang mga kliyente ng third-party ay may sariling diagnostics at kadalasang walang isinusulat sa log ng Application. Suriin ang log ng vendor bago magpasya na sira ang event logging.

Bumuo ng isang timeline sa halip na bunton ng mga event

Ang mga retry loop ay gumagawa ng ingay. Limang awtomatikong reconnect ang nag-iiwan ng kumpol ng mga event, at ang tukso ay basahin ang mga ito bilang isang pagkakasunod-sunod na may isang sanhi. Limang hiwalay na pagtatangka ang mga iyon, at ang ilan lamang ang umabot sa isang server. Kumuha ng window na dalawa o tatlong minuto, isang pangalan ng koneksyon, at ilista ang bawat event kasama ang sarili nitong code bago bigyang-kahulugan ang anuman.

Pagkatapos ay itanong kung saan huminto ang pagtatangka. Kapag ang gateway o ang backend ng authentication ay walang anumang tala para sa timestamp na iyon, hindi kailanman naabot ito ng kliyente, at tinitingnan mo ang problema sa maabot. Kapag nagpapakita ang backend ng kahilingan at pagtanggi, doon ginawa ang desisyon, at ang klase ng kredensyal o patakaran ay naaangkop. Ihambing ang mga orasan bago ihambing ang mga oras: lokal na oras ang iniuulat ng mga kliyente, maraming gateway ang naglo-log sa UTC, at ang pagkakaiba ay gagawing mukhang walang kaugnayan ang isang perpektong magkakaugnay na pares.

Para sa paulit-ulit na pagkuha, mag-dial mula sa command line at hayaang i-print nito ang resulta:

rasdial "Office VPN"
rasdial "Office VPN" /disconnect

Ipinapakita ng console ang numerong itinatago ng GUI sa likod ng magiliw na teksto, at ang pagpapatakbo nito nang dalawang beses ay magsasabi kung ang code ay matatag o paminsan-minsan.

Ano ang sinasabi ng bawat yugto na dapat mong baguhin

Ang pagbibigay ng pangalan sa yugto ay kapaki-pakinabang lamang kung pinapaliit nito ang hanay ng mga pagbabago sa isang layer:

  • 691 — authentication: ang paraang EAP na iniaalok ng kliyente kumpara sa tinatanggap ng server, estado ng account, pag-expire ng password, pahintulot sa dial-in.
  • 812 — patakaran ng server: ang patakaran sa remote access o tuntuning NPS na tumutugma sa user na ito at sa window ng oras na ito.
  • 809 — maabot: mga tuntunin ng firewall sa landas, NAT at pagpasa ng protocol, ang port na kailangan ng napiling uri ng tunnel.
  • 720 — negosasyon ng PPP: hindi pagtutugma ng protocol ng authentication, paglalaan ng address, setting ng PPP sa panig ng server.
  • 789 / 13801 — pagkakakilanlan ng IPsec: subject ng certificate kumpara sa pangalang dinial mo, kadena ng pagtitiwala, pre-shared key.

Baguhin ang isa sa mga iyon, subukan muli ang parehong profile, at isulat ang bagong code. Ang ibang code pagkatapos ng pagbabago ay pag-unlad, hindi pagsalungat: inilipat mo ang kabiguan sa huling yugto, at ganoon ang hitsura ng pag-aayos ng multi-stage na handshake. Ang hindi mo dapat gawin ay baguhin ang firewall, certificate at password sa isang upuan at pagkatapos ay bigyan ng kredito ang huling dumating.

Ibahagi ang ebidensya, hindi ang kapaligiran

Ang mga mensahe ng event ay mas mayaman kaysa sa hitsura nila. Dala nila ang pangalan ng koneksyon, ang account, kadalasan ang panloob na pangalan o address ng gateway, at kung minsan ay fingerprint ng certificate. Itago ang orihinal kung saan nararapat, at bumuo ng hiwalay na na-edit na kopya para sa sinumang iba pa; ang muling pag-type ng timeline mula sa memorya ay nawawala nang eksakto ang mga detalyeng nagpapahalaga rito.

Ang isang turnover na gagawin ay nangangailangan ng limang field: ang code, ang yugtong kinabibilangan nito, ang kliyente at uri ng tunnel, ang timestamp kasama ang timezone nito, at kung nakita man ng gateway ang kahilingan. Lahat ng iba ay opsyonal. Sa limang iyon, matutukoy ng susunod na tao ang pagkakaiba ng pagtatalo sa kredensyal sa pagtatalo sa routing nang hindi inuulit ang imbestigasyon.

Bago isara ang anuman, i-replay ang pagtatangka sa parehong profile at kumpirmahin kung saan na lumalapag ang code. Ang tagumpay ay nagtatapos nito; ang ibang kabiguan ay nangangahulugang naayos na ang orihinal na yugto at hawak mo na ang susunod.

Kaugnay na mga artikulo