जब मेरा नेटवर्क स्टॉल हो तो कंप्यूटर को रिबूट कैसे करें?


0

मैं एक विंडोज 10 कंप्यूटर चला रहा हूं, जिसे मुझे घर से दूर जाने पर दूरस्थ रूप से सक्षम होने की आवश्यकता है। मैं इस कंप्यूटर पर एक वीपीएन सेवा का उपयोग करता हूं और जब समय की विस्तारित अवधि के लिए छोड़ दिया जाता है, तो कनेक्शन अक्सर गिर जाएगा, सिस्टम को ऐसी स्थिति में डाल देगा जहां वीपीएन क्लाइंट को लगता है कि यह अभी भी जुड़ा हुआ है, लेकिन ऐसा नहीं है। क्लाइंट कभी भी पुन: कनेक्ट करने का प्रयास नहीं करता है, क्योंकि यह मानता है कि यह अभी भी जुड़ा हुआ है, और गैर-वीपीएन ट्रैफ़िक भी अवरुद्ध है (एक प्रकार का अनजाने में किल स्विच की तरह)। यह एक ऐसी स्थिति में होता है जहां एक गैर-इरादतन हत्या-स्विच मुझे अपने कंप्यूटर को दूरस्थ रूप से एक्सेस करने से रोकता है।

जब कंप्यूटर 5 मिनट से अधिक समय तक अप्राप्य प्रतीत होता है, तो कंप्यूटर को स्वचालित रूप से रिबूट करना मेरा अंतिम लक्ष्य है, लेकिन मुझे यकीन नहीं है कि इसके बारे में कैसे जाना जाए। मैं सराहना करता हूं कि अगर कोई मुझे इस तरह की स्थिति में कंप्यूटर को रिबूट करने वाली स्क्रिप्ट डिजाइन करने में मदद कर सकता है। मैं सभी cmd या पावरस्क्रिप्‍ट स्क्रिप्टिंग से परिचित नहीं हूं, लेकिन यहां एक छोटा सा छद्मकोड है जो मैं स्क्रिप्ट को देख रही प्रक्रिया को प्रदर्शित करता हूं, इस तरह से कि यह मेरे ओएस के साथ निर्मित अंतर्निहित टूल / सॉफ्टवेयर के साथ चलाया जा सकता है, जैसे। शक्तियां या बैच।

// Note- PSEUDO-CODE, NOT A USABLE SCRIPT AS-IS
ping 8.8.8.8 // check for internet connection. 0% packet returns would indicate the computer had probably entered this network lock-up
if pingsReturned == 0
{
    wait 5 minutes // in case of temporary disconnect, give the network time to reestablish itself
    ping superuser.com // alternate site used to confirm google isn't the only site I can't connect to, i.e. google is down, not my network connectivity
    if pingsReturned == 0
        shutdown /f /r /t 60 /c "Rebooting due to connection issues." 
    else
    {
        exit
    }
}
else
{
    exit
}

यदि संभव हो तो कार्य शेड्यूलर में 5 मिनट के अंतराल पर चलने वाले कार्य के रूप में इसे चलाने की योजना बनाऊंगा। मैंने इंटरनेट पर (और इस साइट पर) विशेष रूप से समाधान ढूंढ रहा हूं, लेकिन विंडोज के लिए कोई भी नहीं मिला, हालांकि मुझे लिनक्स सेटअप के लिए बहुत समान कार्यान्वयन मिला (जो संयोगवश Google के DNS का परीक्षण के रूप में भी उपयोग किया था, या शायद यह सिर्फ एक है सामान्य रूप से पिंग परीक्षणों के लिए साइट पर जाएं ...)।


सिर्फ अपने वीपीएन क्लाइंट में जिंदा पैकेट रखने में सक्षम क्यों नहीं?
डैनियल बी

@ डैनियल बी यह आसान हो सकता है अगर ग्राहक के पास विकल्प था, लेकिन यह नहीं है। मैं आधिकारिक TigerVPN क्लाइंट का उपयोग कर रहा हूं। TigerVPN IS OpenVPN GUI के साथ संगत है, लेकिन यहां तक ​​कि DNS रिसाव प्लगइन के साथ, मुझे अभी भी कभी-कभी लीक का उपयोग करते समय मिलता है।
मैथ्यू

जवाबों:


0

मुझे लगता है कि इस तरह से कुछ करना चाहिए

:: ping google
ping www.google.com -n 1 | find "TTL=" >nul
if errorlevel 1 (
    :: wait 60 seconds
    ping 127.0.0.1 -n 60 > nul

    :: ping another
    ping www.facebook.com -n 1 | find "TTL=" >nul
    if errorlevel 1 (
        echo Rebooting...
        shutdown /r
    ) else (
        echo We're back up again
    )
) else (
    echo We're up
)
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.