windows主機批處理命令檢查網路卡網路自動重啟網路卡

strivechao發表於2019-04-04

最近有臺windows伺服器主機偶爾會出現網路斷掉的情況,網路圖示感嘆號狀態。其他電腦的網路都是正常。

原因分析與處理:

1.可能是伺服器主機的ip被人頂掉?這個可能是有的,但應該比較小。

2.系統漏洞導致?

所以,更新了系統漏洞。

3.硬體驅動問題?

重新下載網路卡驅動程式,重新安裝。

4.網路卡硬體問題,那隻能換網路卡了。現在還無法判斷。

鑑於還是有可能出現斷網的情況,為此,整理一段檢查網路情況的程式碼,網路無法連線,可自動重啟網路卡。

程式碼如下,僅供參考:

@echo off

echo "網路卡自動檢查重啟服務正在進行中......."

echo "停止服務請按 Ctrl+C"


:begin

set "year=%date:~0,4%"

set "month=%date:~5,2%"

set "day=%date:~8,2%"

echo %date% %time% "ping......" >> ping%year%%month%%day%.txt

ping 192.168.1.1 >>ping%year%%month%%day%.txt                        

rem echo %errorlevel%

if %ERRORLEVEL% == 1 goto reboot

goto loop



:reboot

echo %date% %time% "網路卡已重新啟動" >>errlog.log

echo %date% %time% "網路卡停用中...."

netsh interface set interface "本地連線 2" disabled

echo %date% %time% "網路卡啟動中...."

netsh interface set interface "本地連線 2" enabled

echo %date% %time% "網路卡已重新啟動...."


:loop

ping 127.0.0.1 -n 60> nul

goto begin


說明:

rem 表示此命令後的字元為解釋行,不執行,只是給自己今後查詢用的。:: 也可以起到 rem 的註釋作用, 而且更簡潔有效;

%errorlevel% 返回上次命令的執行結果   不成功返回為1   成功返回為0

當使用if %errorlevel%==值 cmmand 句式時,它含義是:如果返回的錯誤碼值等於值 的時候,將執行cmmand操作。

netsh interface set interface "本地連線 2" enabled

這個本地連線 2 是可以換成某個網路卡的,譬如 internet



來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25469263/viewspace-2640344/,如需轉載,請註明出處,否則將追究法律責任。

相關文章