Windows býður ekki upp á neina endurhringingarstefnu fyrir VPN-biðlara sinn, svo tenging sem dettur út á miðnætti er enn niðri í morgunmat. Tímastýrð verkefni sem fylgjast með rofinu og keyra rasdial loka þessari glufu án biðlara frá þriðja aðila. Hvort verkefnið hagar sér eins og stjórnandi eða eins og lykkja veltur á þremur smáatriðum: hvaða atburðum það passar, hvaða auðkenni það getur séð og hvað það gerir við niðurstöðuna. Ekkert þeirra þriggja er erfitt, og að sleppa einhverju þeirra er það sem framleiðir verkefni sem hringir að eilífu.

Hvers vegna tímamælir er rangi kveikjan

Tímamælir hringir samkvæmt eigin áætlun hvort sem göngin eru niðri eða ekki. Það framleiðir tilraunir sem enginn þurfti á að halda, og tilraun í vinnulotu getur truflað hana. Atburðakveikja kviknar aðeins þegar tengingin skiptir um stöðu, sem er ódýrara og auðveldara að rökræða. Atburðurinn ber líka ástæðuna, og ástæðan er það sem aðgreinir netbilun frá einstaklingi sem aftengir sig viljandi.

Sá greinarmunur er munurinn á gagnlegu verkefni og því sem glímir við notandann á hverju kvöldi. Hann er líka sá hluti sem vantar venjulega í uppskriftir sem lýsa aðeins aðgerðinni.

Atburðaparinu, og þeim sem á að bæla

Biðlari Remote Access Service skrifar lífsferilsskrár í Application-annálinn undir veitandanum RasClient. 20226 merkir tengingu sem lauk, og 20227 merkir tilraun sem mistókst, svo hvort tveggja getur réttlætt nýja hringingu. Allt annað í verkefninu veltur á að passa þessi tvö auðkenni nákvæmlega. Þau hafa verið stöðug í áraraðir, þess vegna ganga uppskriftir byggðar á þeim enn, en bygging sem endurnefnir veitandann eða auðkennin gerir það að verkum að fyrirspurnin skilar engu. Keyrðu sönnunarþrepið aftur eftir hverja eiginleikauppfærslu í stað þess að bíða eftir að verkefnið hætti að kvikna.

Eitt lok þarf að undanskilja. Villa 631 þýðir að notandinn aftengdi gáttina, og endurhringing á þeirri stundu glímir við einstaklinginn sem var einmitt að skipta um net viljandi. Settu undantekninguna í síu kveikjunnar frekar en í skriptuna, svo verkefnið byrji alls ekki. Hún verður að eiga við eitt atburðaauðkenni, því EventData forsenda passar aðeins þegar nefnda þátturinn er til, og sameiginleg klausa myndi hljóðlega sleppa hverjum atburði hins auðkennisins. Lestu nafn þáttarins úr raunverulegri skrá áður en þú skrifar síuna:

Get-WinEvent -LogName Application -MaxEvents 5 -FilterXPath "*[System[Provider[@Name='RasClient'] and EventID=20226]]" | Select-Object -First 1 -ExpandProperty ToXml

XML sýnir nákvæm Data-heiti í þeirri skrá. ErrorCode er venjuleg stafsetning, og skrá sem notar eitthvað annað þarf að skipta því nafni út í síunni hér fyrir neðan.

<QueryList><Query Id="0" Path="Application"><Select Path="Application">*[System[Provider[@Name='RasClient'] and (EventID=20226 or EventID=20227)]] and (EventData[Data[@Name='ErrorCode'] != '631'] or System[EventID=20227])</Select></Query></QueryList>

Límdu það í sérsniðna síu kveikjunnar og sannaðu það sem fyrirspurn áður en það verður kveikja. Sama XPath keyrir frá PowerShell gegn lifandi annálnum, sem er ódýra leiðin til að sjá hvað hún passar meðan verkefnasaga er enn óviðkomandi.

Get-WinEvent -LogName Application -MaxEvents 40 -FilterXPath "*[System[Provider[@Name='RasClient'] and (EventID=20226 or EventID=20227)]] and (EventData[Data[@Name='ErrorCode'] != '631'] or System[EventID=20227])" | Select-Object TimeCreated,Id,Message

Kveikja sem passar hljóðlega við ekkert lítur nákvæmlega út eins og verkefni sem keyrir og mistekst. Bæði birtast sem „sjálfvirknin virkar ekki“, og hvorugt segir hvaða helming vantar. Athugaðu úttak fyrirspurnarinnar fyrst, því það aðgreinir tilfellinn tvö í einu skrefi.

Hringingin mistekst því enginn er til að slá inn lykilorðið

Aðgerðin keyrir rasdial með nafni tengingarinnar. Þegar sniðið hefur ekkert skyggt auðkenni mistekst hringingin strax því enginn er til að svara beiðninni. Þetta er algengasta ástæðan fyrir því að rétt kveikt verkefni gerir ekkert sýnilegt, svo athugaðu það áður en þú snertir kveikjuna. Handvirk hringing úr skipanalínu aðgreinir auðkennavandamál frá áætlunarvandamáli.

Geymdu auðkennið einu sinni undir þeim reikningi sem verkefnið mun keyra sem, og gerðu þann reikning að hluta af hönnuninni. Verkefni sem keyrir sem SYSTEM getur ekki lesið auðkenni sem gagnvirkur reikningurinn þinn skyggði, og verkefni sem keyrir sem einhver annar getur það ekki heldur. Nafnið verður líka að passa nákvæmlega við sniðið, þar á meðal hvaða lénsforskeyti sem er í notandareitnum.

rasdial
rasdial "Office VPN"
(Start-Process rasdial -ArgumentList '"Office VPN"' -Wait -PassThru -NoNewWindow).ExitCode

Fyrsta skipunin listar nöfnin sem Windows þekkir. Önnur hringir eftir nafni með skyggða auðkenninu, og þriðja er sú mynd sem PowerShell-aðgerð ætti að nota, því hún bíður og skilar gildi sem verkefnið getur skráð.

Lestu útgangskóðann í stað gluggans

Verkefni sem ræsir ferli án þess að bíða tilkynnir árangur um leið og ferlið er til. Fyrir hringingu sem getur mistekist sekúndu síðar er sá dómur einskis virði. Að bíða eftir útgangskóðanum gerir aðgerðina að raunverulegri niðurstöðu. Verkefnasaga ein og sér sýnir aðeins að ferli hófst, aldrei að göng hafi risið.

Skráðu gildið með tímastimpli í hverri keyrslu. Eitt mistök eftir niðurföll eru eðlileg, en þrjú mistök í röð með sama kóða benda til auðkennisins eða sniðsins frekar en netsins. Það mynstur er það sem gerir söguna lesþverða.

Bættu við stuttu endurtekningarbili sem tryggingu, og segðu skýrt hvernig það vinnur með atburðakveikju. Endurtekning á hverri mínútu í fimm mínútur veitir aðra tilraun þegar internetið kom aftur með göngunum, og undir Stillingar, „Ef verkefnið er þegar í gangi gildir eftirfarandi regla“, vill verkefnið „Ekki hefja nýtt eintak“ svo endurtekning skarist ekki við hringingu sem er enn í gangi. Án þeirrar stillingar geta tvö rasdial-ferli keppt um sömu gátt og annað mistekst án nokkurrar gagnlegrar ástæðu.

Sannaðu endurheimtarleiðina

Prófaðu báðar áttir viljandi. Aftengdu handvirkt og staðfestu að engin endurhringing eigi sér stað, slökktu síðan á netkortinu og staðfestu að verkefnið kvikni þegar hlekkurinn kemur aftur. Þessi tvö próf ná yfir bælingarregluna og raunverulega bilunartilfellið, og ekkert annað gerir það.

Lestu verkefnasöguna á eftir frekar en tengitáknið. Sagan skráir hvenær verkefnið keyrði, hvaða reikning það notaði og hvað aðgerðin skilaði, og það er sönnunin sem þarf þegar sama vélin dettur út aftur í næsta mánuði.

Tengdir greinar