Windows తన VPN క్లయింట్కు తిరిగి డయల్ చేసే విధానాన్ని అందించదు, కాబట్టి అర్ధరాత్రి తెగిపోయే కనెక్షన్ ఉదయపు భోజనం సమయంలో కూడా ఆఫ్లోనే ఉంటుంది. డిస్కనెక్ట్ను గమనించి rasdial ను అమలు చేసే షెడ్యూల్ చేసిన పని మూడవ పక్ష క్లయింట్ లేకుండా ఆ ఖాళీని నింపుతుంది. పని ఆపరేటర్లా లేదా లూప్లా ప్రవర్తిస్తుందా అనేది మూడు వివరాలపై ఆధారపడి ఉంటుంది: ఏ సంఘటనలతో సరిపోతుంది, ఏ ఆధారాలను చూడగలదు, మరియు ఫలితంతో ఏమి చేస్తుంది. మూడింటిలో ఏదీ కష్టం కాదు, మరియు వాటిలో ఏదైనా తప్పిపోవడమే ఎప్పటికీ డయల్ చేసే పనిని సృష్టిస్తుంది.

టైమర్ తప్పు ట్రిగ్గర్ ఎందుకు

టన్నెల్ డౌన్ ఉన్నా లేకున్నా టైమర్ తన స్వంత షెడ్యూల్ ప్రకారం డయల్ చేస్తుంది. అది ఎవరికీ అవసరం లేని ప్రయత్నాలను సృష్టిస్తుంది, మరియు పని సెషన్ మధ్యలో చేసే ప్రయత్నం దానిని అంతరాయం కలిగించవచ్చు. ఈవెంట్ ట్రిగ్గర్ కనెక్షన్ స్థితి మారినప్పుడు మాత్రమే మండుతుంది, ఇది చౌక మరియు ఆలోచించడానికి సులభం. సంఘటన కారణాన్ని కూడా మోసుకొస్తుంది, మరియు కారణమే నెట్వర్క్ వైఫల్యాన్ని ఉద్దేశపూర్వకంగా డిస్కనెక్ట్ చేసే వ్యక్తి నుండి వేరు చేస్తుంది.

ఆ భేదమే ఉపయోగకరమైన పని మరియు ప్రతి సాయంత్రం వినియోగదారుతో పోరాడే పని మధ్య భేదం. కేవలం చర్యను వివరించే వంటకాలలో సాధారణంగా లేని భాగం కూడా అదే.

సంఘటనల జత, మరియు అణచివేయవలసినది

Remote Access Service క్లయింట్ జీవిత చక్ర రికార్డులను RasClient ప్రొవైడర్ కింద Application లాగ్కు వ్రాస్తుంది. 20226 ముగిసిన కనెక్షన్ను, 20227 విఫలమైన ప్రయత్నాన్ని సూచిస్తాయి, కాబట్టి రెండూ కొత్త డయల్ను సమర్థించగలవు. పనిలో మిగతావన్నీ ఆ రెండు గుర్తింపులను ఖచ్చితంగా సరిపోల్చడంపై ఆధారపడి ఉంటాయి. అవి సంవత్సరాలుగా స్థిరంగా ఉన్నాయి, అందుకే వాటిపై నిర్మించిన వంటకాలు ఇంకా తిరుగుతున్నాయి, కానీ ప్రొవైడర్ లేదా గుర్తింపుల పేరు మార్చే బిల్డ్ ప్రశ్న ఏమీ తిరిగి ఇవ్వకుండా చేస్తుంది. ప్రతి ఫీచర్ నవీకరణ తర్వాత రుజువు దశను మళ్లీ అమలు చేయండి, పని మండటం ఆగిపోయే వరకు వేచి ఉండటం బదులు.

ఒక ముగింపును మినహాయించాలి. లోపం 631 అంటే పోర్టును వినియోగదారు డిస్కనెక్ట్ చేశారు, మరియు ఆ క్షణంలో తిరిగి డయల్ చేయడం ఇప్పుడే ఉద్దేశపూర్వకంగా నెట్వర్క్ మార్చిన వ్యక్తితో పోరాడటం. మినహాయింపును స్క్రిప్ట్లో కాదు, ట్రిగ్గర్ ఫిల్టర్లో పెట్టండి, పని అసలు ప్రారంభం కాకుండా. ఇది ఒకే ఒక ఈవెంట్ ఐడీకి మాత్రమే వర్తించాలి, ఎందుకంటే EventData ప్రిడికేట్ పేర్కొన్న మూలకం ఉన్నప్పుడే సరిపోతుంది, మరియు భాగస్వామ్య నిబంధన మరొక ఐడీ యొక్క ప్రతి సంఘటనను నిశ్శబ్దంగా తొలగిస్తుంది. ఫిల్టర్ రాయడానికి ముందు నిజమైన రికార్డు నుండి మూలకం పేరును చదవండి:

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

XML ఆ రికార్డులో Data యొక్క ఖచ్చితమైన పేర్లను చూపుతుంది. ErrorCode సాధారణ అక్షరక్రమం, మరియు వేరేది ఉపయోగించే రికార్డుకు క్రింది ఫిల్టర్లో ఆ పేరు మార్చాలి.

<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>

దాన్ని ట్రిగ్గర్ యొక్క అనుకూల ఫిల్టర్లో అతికించి, అది ట్రిగ్గర్ అయ్యే ముందు ప్రశ్నగా నిరూపించండి. అదే XPath PowerShell నుండి ప్రత్యక్ష లాగ్కు వ్యతిరేకంగా నడుస్తుంది, ఇది పని చరిత్ర ఇంకా పాల్గొననప్పుడు అది దేనితో సరిపోతుందో చూడటానికి చౌక మార్గం.

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

నిశ్శబ్దంగా ఏదీ సరిపోలని ట్రిగ్గర్ నడిచి విఫలమయ్యే పనిలాగే కనిపిస్తుంది. రెండూ "ఆటోమేషన్ పనిచేయదు" అని కనిపిస్తాయి, ఏ సగం మిస్ అయిందో ఏదీ చెప్పదు. మొదట ప్రశ్న యొక్క అవుట్పుట్ను తనిఖీ చేయండి, ఎందుకంటే అది రెండు సందర్భాలను ఒకే దశలో వేరు చేస్తుంది.

పాస్వర్డ్ టైప్ చేయడానికి ఎవరూ లేకపోవడం వల్ల డయల్ విఫలమవుతుంది

చర్య కనెక్షన్ పేరుతో rasdial ను అమలు చేస్తుంది. ప్రొఫైల్లో క్యాష్ చేసిన ఆధారాలు లేనప్పుడు, ప్రాంప్ట్కు సమాధానం ఇవ్వడానికి ఎవరూ లేకపోవడం వల్ల డయల్ వెంటనే విఫలమవుతుంది. సరిగ్గా ట్రిగ్గర్ అయిన పని ఏమీ కనిపించకుండా ఉండటానికి ఇదే అత్యంత సాధారణ కారణం, కాబట్టి ట్రిగ్గర్ను తాకే ముందు దీన్ని తనిఖీ చేయండి. కమాండ్ ప్రాంప్ట్ నుండి చేతితో డయల్ చేయడం ఆధారాల సమస్యను షెడ్యూలింగ్ సమస్య నుండి వేరు చేస్తుంది.

పని నడిచే ఖాతా కింద ఆధారాలను ఒకసారి సేవ్ చేయండి, మరియు ఆ ఖాతాను డిజైన్లో భాగం చేయండి. SYSTEMగా నడిచే పని మీ పరస్పర ఖాతా క్యాష్ చేసిన ఆధారాలను చదవలేదు, మరొకరిగా నడిచే పని కూడా చదవలేదు. పేరు కూడా ప్రొఫైల్తో ఖచ్చితంగా సరిపోలాలి, వినియోగదారు ఫీల్డ్లోని ఏదైనా డొమైన్ ప్రిఫిక్స్తో సహా.

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

మొదటి ఆదేశం Windows కు తెలిసిన పేర్లను జాబితా చేస్తుంది. రెండవది క్యాష్ చేసిన ఆధారాలను ఉపయోగించి పేరు ద్వారా డయల్ చేస్తుంది, మూడవది PowerShell చర్య ఉపయోగించాల్సిన రూపం, ఎందుకంటే అది వేచి పని నమోదు చేయగల విలువను తిరిగి ఇస్తుంది.

విండోకు బదులు నిష్క్రమణ కోడ్ను చదవండి

వేచి ఉండకుండా ప్రక్రియను ప్రారంభించే పని ప్రక్రియ ఉనికిలో ఉన్న వెంటనే విజయాన్ని నివేదిస్తుంది. ఒక సెకను తర్వాత విఫలమయ్యే డయల్కు ఆ తీర్పు విలువలేనిది. నిష్క్రమణ కోడ్ కోసం వేచి ఉండటం చర్యను నిజమైన ఫలితంగా మారుస్తుంది. పని చరిత్ర ఒంటరిగా ప్రక్రియ ప్రారంభమైందని మాత్రమే చూపుతుంది, టన్నెల్ పైకి వచ్చిందని ఎప్పటికీ చూపదు.

ప్రతి అమలులో సమయ ముద్రతో విలువను లాగ్ చేయండి. అంతరాయం తర్వాత ఒకే ఒక వైఫల్యం సాధారణం, కానీ అదే కోడ్తో వరుసగా మూడు వైఫల్యాలు నెట్వర్క్ వైపు కాదు, ఆధారాలు లేదా ప్రొఫైల్ వైపు సూచిస్తాయి. ఆ నమూనానే చరిత్రను చదవదగినదిగా చేస్తుంది.

బీమాగా చిన్న పునరావృత విరామాన్ని జోడించండి, మరియు అది ఈవెంట్ ట్రిగ్గర్తో ఎలా సంకర్షణ చెందుతుందో స్పష్టంగా చెప్పండి. ఐదు నిమిషాల పాటు ప్రతి నిమిషం పునరావృతం ఇంటర్నెట్ టన్నెల్తో తిరిగి వచ్చినప్పుడు రెండవ ప్రయత్నాన్ని అందిస్తుంది, మరియు సెట్టింగ్లలో, "పని ఇప్పటికే నడుస్తున్నట్లయితే, క్రింది నియమం వర్తిస్తుంది", పని "కొత్త ఇన్స్టాన్స్ ప్రారంభించవద్దు" అని కోరుతుంది, తద్వారా పునరావృతం ఇంకా నడుస్తున్న డయల్తో అతివ్యాప్తి చెందదు. ఆ సెట్టింగ్ లేకుండా రెండు rasdial ప్రక్రియలు ఒకే పోర్టు కోసం పోటీ పడవచ్చు మరియు రెండవది ఎటువంటి ఉపయోగకరమైన కారణం లేకుండా విఫలమవుతుంది.

పునరుద్ధరణ మార్గాన్ని నిరూపించండి

రెండు దిశలను ఉద్దేశపూర్వకంగా పరీక్షించండి. చేతితో డిస్కనెక్ట్ చేసి తిరిగి డయల్ జరగదని నిర్ధారించుకోండి, తర్వాత నెట్వర్క్ అడాప్టర్ను నిలిపివేసి లింక్ తిరిగి వచ్చినప్పుడు పని మండుతుందని నిర్ధారించుకోండి. ఆ రెండు పరీక్షలు అణచివేత నియమాన్ని మరియు నిజమైన వైఫల్య సందర్భాన్ని కవర్ చేస్తాయి, మరియు మరేదీ అలా చేయదు.

ఆ తర్వాత కనెక్షన్ ఐకాన్కు బదులు పని చరిత్రను చదవండి. పని ఎప్పుడు నడిచింది, ఏ ఖాతా ఉపయోగించింది మరియు చర్య ఏమి తిరిగి ఇచ్చింది అని చరిత్ర నమోదు చేస్తుంది, మరియు వచ్చే నెల అదే యంత్రం మళ్లీ పడిపోయినప్పుడు అదే సాక్ష్యం అవసరం.

సంబంధిత వ్యాసాలు