Сервер кайра жүктөлөт, OpenVPN ишке кирет, ал эми RRAS ал көз каранды адаптер же маршрут али жок кезде көтөрүлөт. Бир мүнөттөн кийин RRAS-ты кол менен кайра иштетүү аны оңдойт, бул көйгөйдү чечилгендей көрсөтүп, чыныгысын жашырат. Бул жерде эки башка шарт аралашат: алдын ала талап кылынган кызмат иштеп жатат, жана RRAS-ка чындап керектүү тармактык ресурс колдонууга жарактуу болду. Windows кызмат көз карандылыгы биринчи шартты билдире алат, экинчисин эч качан билдирбейт, ошондуктан ресурсту аныктабай көз карандылык кошуу сизге тартиптүү көрүнгөн жүктөөнү жана ошол эле бузулууну берет.

Муздак жүктөөдө симптом кандай көрүнөт

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

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

«Кайра иштеткенден кийин иштейт» деген негизде кошулган көз карандылык ошол эле бузулууну алдын ала талап кылынган кызмат RUNNING деп билдиргенге чейинки убакытка гана кечиктирет. Ал жүктөөнү түшүнүүнү да кыйындатат, анткени тартип чектөөсү эми түшүндүрмөгө окшоп көрүнөт. Көз карандылык кайсы объектке кепилдик берерин жана ошол объект RRAS көрө албаган объектпи экенин сураңыз.

Ресурсту атаңыз, кызматты гана эмес

Жетишпеген конкреттүү нерсени жазыңыз. Бул дареги бар туннел адаптери, өнөктөштүн ички тармагына маршрут, DNS жообу же али берилип жаткан сертификат болушу мүмкүн. «VPN кызматы иштеп жатат» ресурстун сүрөттөмөсү эмес, клиенттеги жашыл белги да эмес. Объектти жана аны көрсөткөн буйрукту атай алмайынча, сиз күтүүгө аракет кылган шартты аныктаган жоксуз.

Бул OpenVPN нускасынын кантип ишке кирерин да аныктаңыз. GUI менен башкарылган туннел жана кызмат менен башкарылган туннелдин жүктөө жашоо циклдери башка, жана кызматтын аты сиздин алдыңыздагы машинадан келиши керек, башка орнотуучу үчүн жазылган мисалдан эмес. Эсте калган атка ишенүүнүн ордуна талапкерлерди тизмелеңиз.

Get-Service | Where-Object Name -match 'vpn|openvpn' | Select-Object Name, Status, StartType

Кошуудан мурун көз карандылык чынжырын окуңуз

Кызматтарды башкаруу менеджери START_PENDING жана RUNNING сыяктуу абалдарды билдирет, ал эми SERVICE_STATUS reference ар бир талаанын эмнени билдирерин так аныктайт. Бул абалдардын эч бири өнөктөштүн, DNS атынын же төмөнкү колдонмонун жеткиликтүү экенине убада бербейт. Ушул ажырым бул бузулуунун туура конфигурацияланган көз карандылыктан аман калышынын бүткүл себеби.

Get-Service -Name RemoteAccess | Select-Object Status, StartType
sc.exe qc RemoteAccess
Get-Service -Name RemoteAccess | Select-Object -ExpandProperty DependentServices

sc.exe qc чыгышындагы DEPENDENCIES сабы — сакталуучу тизме, анткени sc.exe config RemoteAccess depend= бүткүл тизмени алмаштырат, ага кошпойт. VPN кызматын кошууда байланышсыз алдын ала шартты таштап кетүү башка жүктөөдө пайда болуучу экинчи бузулууну жаратат, жана аны диагностикалоо баштапкыдан алда канча кыйын. Ага тийүүдөн мурун учурдагы тизмени өзгөртүүлөр жазууңузга көчүрүңүз.

Көз карандылыктар өчүрүү жүрүм-турумун да өзгөртөт, анткени алдын ала шартты токтотуу ага көз каранды кызматтарды токтотот. RRAS-ты тез-тез кайра иштетилүүчү нерсеге туташтыруудан мурун тейлөө убагында эмне болорун текшериңиз.

Кайра иштетүүнү таймерге эмес, шартка байлантыңыз

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

Get-NetAdapter | Where-Object Status -eq 'Up'
Get-NetRoute -DestinationPrefix 0.0.0.0/0
Get-WinEvent -LogName System -MaxEvents 40 |
  Where-Object ProviderName -eq 'Service Control Manager'

Жүктөөдө иштеген пландалган тапшырма ошол текшерүүлөрдү аткарып, RRAS-ты адаптер же маршрут али жок болгондо гана кайра иштетсе, ал чектелген, текшерүүгө ылайыктуу жана оңой жоюлат. Альтернатива — ар бир кайра туташууда RRAS-ты кайра иштетүү — соо сессияларды үзөт жана туруксуз байланышты кайра иштетүү циклинө айландырат. Бул цикл баштапкы бузулуудан жаман, анткени эми абалы жакшы колдонуучуларга таасир этет.

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

Өтүүнү жазыңыз, кийинки жүктөө өзүн өзү түшүндүрсүн

Бир сапка үч убакыт белгисин жазыңыз: көз каранды кызмат RUNNING-ге качан жетти, керектүү ресурс качан пайда болду жана RRAS аны акыры качан кабыл алды. Ошол бир сап кийинки инженер бере турган суроого жооп берет, жана аны жасоого дээрлик эч нерсе кетпейт. Ансыз кийинки иликтөө ушул иликтөө башталган ошол эле божомолдон башталат.

Белгиленген аракет санынан кийин автоматташтырууну токтотуңуз жана чексиз кайталоонун ордуна ийгиликсиздик тууралуу билдириңиз. «Ресурс эч качан пайда болгон жок» деген айкын билдирүү менен аяктаган жүктөө караңгыда кызматты кайра иштете берген жүктөөдөн кымбат. Ошол билдирүү пайда болгондо, экинчи бөлүмдө жазган ресурстун аты — кийинки адам издеген нерсе.

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