Kartēt disku pirms VPN gatavības? Padariet to atkarīgu no servera
Pieteikšanās skripts kartē koplietojumu, pirms tunelim ir maršruts. Pārbaudiet vienu serveri, kas atbild tikai caur to, pēc tam kartējiet lietotāja sesijā un reģistrējiet rezultātu.
Diska burts parādās pieteikšanās laikā un pēc tam atveras kā tukša mape, vai ar sarkanu krustu un ziņojumu par nepieejamu tīkla resursu. Atļaujas parasti ir kārtībā. Notika tas, ka kartēšanas komanda tika izpildīta logā, kurā VPN klients pastāvēja, bet maršruts uz failu serveri nepastāvēja, un Windows ierakstīja šo neveiksmi kā diska stāvokli. Risinājums ir pārstāt uzskatīt kartēšanu par kaut ko, kas notiek pieteikšanās laikā, un uzskatīt to par savienojuma secības pēdējo soli.
Kāpēc kartēšana notiek pārāk agri
Pieteikšanās skripts sākas, kad sākas sesija. VPN klients, kas savienojas pieteikšanās laikā, pievieno savu laika līniju: process var darboties, virtuālais adapteris var pastāvēt, un maršruts uz biroja apakštīklu var vēl trūkt. Šie trīs stāvokļi no skripta skatupunkta izskatās vienādi, un darbojas tikai viens no tiem.
Dažas vides reaģē, atkārtojot to pašu neveiksmīgo rindu katrā pieteikšanās reizē, kas rada lietotāju, kurš iemācījies divreiz noklikšķināt uz diska, un skriptu, kas nekad nav pats sekmējies.
Pats disks to pasliktina. Kartētais disks ir sesijas objekts, un pēc tam, kad Windows to atzīmēja kā nepieejamu, ikona var palikt salauzta vēl ilgi pēc tam, kad tunelis ir vesels. Tāpēc manuāla atkārtota kartēšana darbojas, kamēr skripts izskatās, ka neko nedara. Sesija atceras neveiksmi, nevis nodomu aiz tās.
Savienots statuss nav maršruts
VPN ikona sistēmas teknē ziņo, vai tunelis ir pacelts. Tā neko nepasaka par to, vai pastāv maršruts uz konkrētu serveri, vai DNS atrisina šo nosaukumu uz tuneļa adresi, vai paša servera ugunsmūris jūs pieņem.
Tie ir trīs atsevišķi bojājumi ar vienu un to pašu redzamo iznākumu, un paļaušanās uz teknes ikonu tos sapludina vienā neuzticamā signālā.
Gatavības pārbaude, kas nosauc serveri, kas jums patiešām vajadzīgs tos atšķir, jo tā neizdodas, kamēr nestrādā konkrētais ceļš, nevis kamēr kāda saskarne ziņo, ka ir savienota.
Padariet atkarīgu no servera, nevis no klienta
Izvēlieties vienu resursdatoru, kas sasniedzams tikai caur tuneli, un pagaidiet to pirms kaut kā kartēšanas. Zemāk esošais fragments savienojas ar saglabātu Windows VPN ierakstu, pārbauda failu serveri un pēc tam kartē disku.
@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 ir gatavības zonde, nevis atļauju tests. Ja jūsu tīklā ICMP tiek filtrēts, pārbaudiet pakalpojumu, ko jūs patiešām izmantojat: net view \\%server% ātrai pārbaudei, vai īsu TCP testu uz 445. portu PowerShell vidē. Jebkurš no tiem balstās uz to, kam ir nozīme.
Pievienojiet ierobežotu mēģinājumu skaitu. Gaidīšanas cilpa bez augšējās robežas pārvērš salauztu tuneli sesijā, kas nekad nepabeidz pieteikšanos, un tas ir sliktāks atbalsta zvans nekā trūkstošs diska burts.
Padariet to atkārtoti izpildāmu un sesiju apzinātu
Izpildiet to paša lietotāja sesijā. Uzdevums, kas darbojas kā SYSTEM, ievieto disku pilnīgi citā sesijā, un pieteicies lietotājs nekad neredz rezultātu. Tā jūs iegūstat skriptu, kas ziņo par panākumiem, un darbvirsmu bez diska.
Pārbaudiet pirms kartēšanas un noņemiet tikai novecojušo ierakstu. net use Z: /delete atgriež kļūdu, kad burts netiek lietots, un šo kļūdu ir droši ignorēt, nevis uzskatīt par iemeslu atteikties no pārējā skripta. Saglabājiet /persistent:no, lai neveiksmīgs mēģinājums vēlāk nepārvērstos pastāvīgā atkārtotas savienošanas mēģinājumā.
Un nelieciet failā paroli. rasdial var atkārtoti izmantot VPN ierakstam saglabātos akreditācijas datus, un koplietojumam vajadzētu autentificēties kā pieteikušajam lietotājam. Ja koplietojumam patiešām vajag citus akreditācijas datus, reģistrējiet tos vienreiz uz lietotāju ar cmdkey, nevis iestrādājiet tos batch failā, kas dzīvo pieteikšanās koplietojumā. Ikviens, kas var lasīt šo koplietojumu, var lasīt arī paroli, un tas pārvērš ērtību incidentā.
Visa skripta atkārtotai izpildei jābūt nekaitīgai, jo tieši tas notiks. Lietotāji savienojas no jauna, portatīvie datori mostas, un tas pats koda ceļš atkal darbojas ar citu sākotnējo stāvokli.
Reģistrējiet pietiekami, lai pierādītu, kura puse kavējās
Ierakstiet laika zīmogu, gatavības pārbaudes rezultātu un kartēšanas iziešanas kodu failā lietotāja profilā. Kad pienāks nākamais ziņojums par trūkstošu disku, šis žurnāls atbildēs uz vienīgo svarīgo jautājumu: vai tunelis atnāca vēlu, vai koplietojums atteica?
Bez tā katrs atkārtojums tiek izmeklēts no nulles, un ierastais secinājums ir atļauju izmaiņas, kas neko nelabo.
Pārbaudiet secību vienreiz pēc aukstas palaišanas un vienreiz pēc miega. Pamošanās gadījums ir tas, kurā kārtība visbiežāk salūzt, jo sesija atsākas pirms tīkla, un skripts redz mašīnu, kas pieteikusies jau stundām.