VPN терезесин ачып, анан он секунд уктаган скрипт божомолдойт жана бул божомол эки жакка тең туура эмес: туннел колдонууга жарактуу боло электе көчүрүүнү баштайт же жумуш башталышы мүмкүн болгондон кийин күтөт. Эки натыйжанын бири да аутентификация бүттүбү деп айтпайды. Буйруктун өз натыйжасын колдонуңуз, анан кызматка ал чындап жооп бере ала турган суроо бериңиз. Бул эки кадамдын тартиби — бүткүл долбоор.

Буйрук чындыгында эмнени билдирет

Орнотулган буйрук сабынын куралы түшүнгөн жергиликтүү Windows профили үчүн rasdial.exe аталган жазууну терет жана процессдин чыгуу кодун кайтарат. Бул код терүү аракетин сүрөттөйт: нөл ошол профиль үчүн байланыш түзүлгөнүн, ал эми нөлдөн башка маани код көрсөткөн этапта ийгиликсиз болгонун билдирет. Аны бир катмардын натыйжасы деп окуңуз, жумуштун натыйжасы деп эмес.

Натыйжа дареги берүү, жеке DNS, кошулган маршруттар же белгилүү бир серверге жетүү уруксаты жөнүндө эч нерсе айтпайды. Мунун баары ийгиликтүү терүүдөн кийин болот жана алардын кайсынысы болбосун дагы эле туура эмес болушу мүмкүн. Ушул ажырык туташкан белги менен ийгиликсиз көчүрүүнүн ушунчалык көп бирге көрүнүшүнүн себеби.

Башка эч нерсе иштегенге чейин натыйжаны жазыңыз

Жумушту аткара турган эсеп үчүн профилдин бар экенин ырастоодон баштаңыз, сиз сынап жаткан эсеп үчүн гана эмес:

Get-VpnConnection -Name "Contoso-Office"
Get-VpnConnection -Name "Contoso-Office" -AllUserConnection

Анан териңиз да, кодду дароо окуңуз. PowerShell баштапкы натыйжаны $LASTEXITCODE ичинде кийинки тышкы буйрук иштегенге чейин гана сактайт, ошондуктан терүү менен текшерүүнүн ортосундагы кокустан келген ping окугуңуз келген маанини жок кылат. Адегенде аны өз өзгөрмөңүзгө менчиликке алыңыз, анан эмне кылууну чечиңиз.

& rasdial.exe "Contoso-Office"
$dial = $LASTEXITCODE
if ($dial -ne 0) { throw "rasdial failed with $dial" }

Кодду купуя эмес ката тексти менен бирге журналга жазыңыз, анткени жок болгон жазуу, четке кагылган ырастоолор жана убакыттын бүтүшү ар кандай жоопторду талап кылат. Таблица кеңири таралган натыйжаларды кийинки кадам менен байланыштырат.

ResultWhat it indicatesNext step
0The dial completedProbe the resource, do not start writing yet
691The credential or authentication method was rejectedFix the account or method, do not retry in a loop
623The named entry was not foundFix the profile name or its scope
Other non-zeroTransport, timeout or adapter failureRead the message, then check the path

Даярдык — ресурс, туннел эмес

Терүү ийгиликтүү болгондон кийин, жумушка керектүү нерсени текшериңиз. Бөлүшүү, API акыркы чекити же маалымат базасынын порту ачык веб-сайттан жакшыраак даярдык текшерүүсү, анткени ачык сайт иштеген каалаган жол аркылуу жооп берет жана жеке жол жөнүндө эч нерсени далилдебейт. Колдонмо өзү көз каранды текшерүүнү тандаңыз. Ийгиликтүү TCP байланышы маршруттоо жана фильтрлөө ачык экенин айтат, ал эми биринчи жазууга керектүүнүн көбү ушул:

Test-NetConnection -ComputerName files.contoso.example -Port 445

Аракеттерди чектеңиз жана кайсы этап ийгиликсиз болгонун жазыңыз. Четке кагылган ырастоолор скриптти токтотушу керек, кайталоо циклин тамактандыруу эмес; али көрүнө элек DNS аталышы бир нече кыска кайталоого татыктуу; эч качан ачылбаган порт — кардардан жогору турган маршруттоо же саясат маселеси.

Байланыш жумуш башталганга чейин эле болгон болсо, ага тийбеңиз. Өзүңүз ачпаган сессияны ажыратуу колдонуучунун башка жумушуна тоскоол болот, ошондуктан сессия кимдики жана кандай жабуу орундуу экенин жазыңыз.

Профилди жумушту аткаруучу эсеп менен чектеңиз

Пландаштырылган тапшырма өзүнүн инсандыгы жана сессиясы астында иштейт жана иш тактаңыздагы иштеген профиль ал жерде көрүнбөшү мүмкүн. Графикке ишенүүдөн мурун көрүнүү текшерүүсүн жана терүүнү тапшырманын эсебинин астында кайталаңыз. Сырсөздү да буйрук сабынан алыс кармаңыз: аргументтер башка процесстерге көрүнөт жана көбүнчө журналдарга түшөт.

Эгер жайылтуу браузердин сурамын, акылдуу картанын тийишин же MFAнын уруксатын талап кылса, бул өз ара аракеттешүү долбоордун бөлүгү жана ачкыч басууну тууроо менен автоматташтырууга болбойт. Ошол учур үчүн колдоого алынган кардарды колдонуңуз жана адам кадамынын болушуна жол бериңиз.

Акыркы скрипттин формасы кыска бойдон калат: профилди текшериңиз, териңиз, кодду окуңуз, ресурсту текшериңиз, анан жумушту баштаңыз. Ар бир кадам мурункусу жооп бере албаган суроого жооп берет жана алардын бири да уйкуга таянбайт.

Тектеш макалалар