VPN tayyor bo'lishidan oldin diskni ulash? Buni serverga bog'lang
Kirish skripti tunnel yo'lga ega bo'lishidan oldin ulashmani xaritalaydi. Faqat shu orqali javob beradigan bitta serverni tekshiring, so'ng foydalanuvchi sessiyasida xaritalang va natijani jurnalga yozing.
Disk harfi kirish paytida paydo bo'ladi va so'ng bo'sh jild sifatida yoki qizil xoch va mavjud bo'lmagan tarmoq resursi haqidagi xabar bilan ochiladi. Ruxsatlar odatda joyida. Bo'lgan narsa shuki, xaritalash buyrug'i VPN mijozi mavjud bo'lgan, lekin fayl serveriga yo'l bo'lmagan oynada ishladi va Windows bu muvaffaqiyatsizlikni diskning holati sifatida qayd etdi. Yechim — xaritalashni kirish paytida sodir bo'ladigan narsa deb qarashni to'xtatib, uni ulanish ketma-ketligining oxirgi qadami deb qarash.
Nega xaritalash juda erta ishlaydi
Kirish skripti sessiya boshlanganda boshlanadi. Kirish paytida ulanadigan VPN mijozi o'z vaqt chizig'ini ustiga qo'shadi: jarayon ishlayotgan bo'lishi mumkin, virtual adapter mavjud bo'lishi mumkin, ofis quyi tarmog'iga yo'l esa hali yetishmayotgan bo'lishi mumkin. Bu uch holat skript nuqtai nazaridan bir xil ko'rinadi va faqat bittasi ishlaydi.
Ba'zi muhitlar har bir kirishda o'sha muvaffaqiyatsiz satrni takrorlash bilan javob beradi, bu esa diskni ikki marta bosishni o'rgangan foydalanuvchini va o'zi hech qachon muvaffaqiyat qozonmagan skriptni keltirib chiqaradi.
Diskning o'zi buni yanada yomonlashtiradi. Xaritalangan disk sessiya obyektidir va Windows uni mavjud emas deb belgilagandan so'ng, tunnel sog'lom bo'lganidan ancha keyin ham belgi buzilgan holda qolishi mumkin. Shuning uchun qo'lda qayta xaritalash ishlaydi, skript esa hech narsa qilmayotgandek ko'rinadi. Sessiya muvaffaqiyatsizlikni eslab qoladi, uning ortidagi niyatni emas.
Ulangan holat yo'l emas
Tepadagi VPN belgisi tunnel ko'tarilganligini bildiradi. Muayyan serverga yo'l bor-yo'qligi, DNS o'sha nomni tunnel manziliga hal qilishi, yoki serverning o'z xavfsizlik devori sizni qabul qilishi haqida hech narsa demaydi.
Bular bir xil ko'rinadigan natijaga ega uchta alohida nosozlik va tepa belgisiga bog'lanish ularni bitta ishonchsiz signalga eritadi.
Haqiqatan kerak bo'lgan serverni nomlaydigan tayyorgarlik tekshiruvi ularni ajratadi, chunki u aniq yo'l ishlamaguncha muvaffaqiyatsiz bo'ladi, qandaydir interfeys o'zini ulangan deb e'lon qilguncha emas.
Klientga emas, serverga bog'lang
Faqat tunnel orqali yetib boriladigan bitta xostni tanlang va biror narsani xaritalashdan oldin uni kuting. Quyidagi parcha saqlangan Windows VPN yozuviga ulanadi, fayl serverini tekshiradi va so'ng diskni xaritalaydi.
@echo off
set server=fileserver.corp.example
rasdial "Office VPN" /disconnect
rasdial "Office VPN"
:wait
ping -n 1 -w 1000 %server% >nul || (
timeout /t 5 /nobreak >nul
goto wait
)
net use Z: \\%server%\share /persistent:no
Ping tayyorgarlik zondi, ruxsat sinovi emas. Agar tarmog'ingizda ICMP filtrlansa, uning o'rniga haqiqatan ishlatadigan xizmatingizni tekshiring: tezkor tekshiruv uchun net view \\%server% yoki PowerShell'da 445-portga qarshi qisqa TCP sinovi. Ikkalasi ham muhim narsaga bog'lanadi.
Cheklangan miqdorda urinish qo'shing. Chegarasiz kutish sikli buzilgan tunnelni hech qachon kirishni tugatmaydigan sessiyaga aylantiradi va bu yo'qolgan disk harfidan ham yomonroq qo'llab-quvvatlash qo'ng'irog'i.
Uni qayta ishga tushiriladigan va sessiyadan xabardor qiling
Uni foydalanuvchining o'z sessiyasida ishga tushiring. SYSTEM sifatida ishlaydigan vazifa diskni butunlay boshqa sessiyaga qo'yadi va kirgan foydalanuvchi natijani hech qachon ko'rmaydi. Shunday qilib siz muvaffaqiyat haqida xabar beradigan skript va diskisiz ish stolini olasiz.
Xaritalashdan oldin tekshiring va faqat eskirgan yozuvni olib tashlang. Harf ishlatilmayotganda net use Z: /delete xato qaytaradi va bu xatoni e'tiborsiz qoldirish xavfsiz, skriptning qolgan qismidan voz kechish uchun sabab emas. /persistent:no ni saqlang, muvaffaqiyatsiz urinish keyinchalik doimiy qayta ulanish urinishiga aylanmasligi uchun.
Va faylga parol qo'ymang. rasdial VPN yozuvi uchun saqlangan hisob ma'lumotlarini qayta ishlatishi mumkin va ulashma kirgan foydalanuvchi sifatida autentifikatsiyalanishi kerak. Agar ulashmaga haqiqatan boshqa hisob ma'lumotlari kerak bo'lsa, ularni kirish ulashmasida yashaydigan batch faylga joylashtirish o'rniga cmdkey bilan har bir foydalanuvchi uchun bir marta ro'yxatdan o'tkazing. O'sha ulashmani o'qiy oladigan har kim parolni ham o'qiy oladi va bu qulaylikni hodisaga aylantiradi.
Butun skriptni qayta ishga tushirish zararsiz bo'lishi kerak, chunki aynan shunday bo'ladi. Foydalanuvchilar qayta ulanadi, noutbuklar uyg'onadi va o'sha kod yo'li boshqa boshlang'ich holat bilan qayta ishlaydi.
Qaysi yarmi kechikkanini isbotlash uchun yetarli jurnal yozing
Vaqt belgisini, tayyorgarlik tekshiruvi natijasini va xaritalashning chiqish kodini foydalanuvchi profili ostidagi faylga yozing. Yo'qolgan disk haqidagi keyingi xabar kelganda, o'sha jurnal yagona muhim savolga javob beradi: tunnel kech keldimi yoki ulashma rad etdimi?
Busiz har bir takrorlanish noldan tekshiriladi va odatiy xulosa hech narsani tuzatmaydigan ruxsat o'zgarishi bo'ladi.
Ketma-ketlikni bir marta sovuq yuklashdan va bir marta uyqudan sinab ko'ring. Uyg'onish holati tartib eng ko'p buziladigan joy, chunki sessiya tarmoqdan oldin davom etadi va skript soatlar oldin kirgan mashinani ko'radi.