目的:
為能自動確認電腦設備清單內所有設備是否正常運作?
本JOB執行後,可省去手動作業時間,提高工作效率,尤其是機關團體內有多數台設備需要確認的場合。
1 作業流程
1.1 先準備欲檢查的設備的IP list 存放在 iplist.txt 檔內,若需更改或追加設備再修改txt file 即可
1.2 list 內設備逐筆ping ip 後,判斷ping執行後,顯示的結果是否有含 ms , 若有則OK ,否則 NG
1.3 將上述設備 IP ping 執行結果,存入暫存放 txt file
1.4 最後列出全部設備PING完了之結果
2 作業說明
2.1 事先準備欲檢查設備的IP 明細,存入iplist.txt ,內容 如下參考:
10.249.84.11
10.249.84.12
10.249.84.13
10.249.84.14
10.249.84.16
10.249.84.17
10.249.84.18
192.168.24.1
10.249.80.40 PXXXXXF03-PRD
10.249.80.41
10.249.80.162
10.249.80.163 HXXXXXB1-01
10.249.80.164
10.249.80.166 HXXXXB-service
10.249.80.167 HXXXXXP1-01
10.249.80.168 HXXXXXPT-01
10.249.80.169
192.168.127.9
10.249.83.11
2.2 每一設備ping 後之結果,顯示如下參考
cmd 指令: 如ping 10.249.80.2
ping 後,結果正常之顯示訊息,如下內容:
Ping 10.249.80.2 (使用 32 位元組的資料):
回覆自 10.249.80.2: 位元組=32 時間=2ms TTL=126
回覆自 10.249.80.2: 位元組=32 時間=3ms TTL=126
大約的來回時間 (毫秒):
最小值 = 2ms,最大值 = 4ms,平均 = 3ms
ping 後,結果異常之顯示訊息,如下 例 E1 :
Ping 10.249.80.251 (使用 32 位元組的資料):
要求等候逾時。
要求等候逾時。
要求等候逾時。
要求等候逾時。
10.249.80.251 的 Ping 統計資料:
封包: 已傳送 = 4,已收到 = 0, 已遺失 = 4 (100% 遺失),
ping 後,結果異常之顯示訊息,如下 例 E2 :
Ping 10.249.83.12 (使用 32 位元組的資料):
回覆自 10.249.83.89: 目的地主機無法連線。
回覆自 10.249.83.89: 目的地主機無法連線。
回覆自 10.249.83.89: 目的地主機無法連線。
回覆自 10.249.83.89: 目的地主機無法連線。
10.249.83.12 的 Ping 統計資料:
封包: 已傳送 = 4,已收到 = 4, 已遺失 = 0 (0% 遺失),
2.3 依據上述ping 後,結果顯示的訊息, 來判斷該當設備 ping 後結果,是否有顯示 ms , 若有則正常OK,否者異常NG
3 實例說明
3.1 實例一
3.1.1 欲確認機器的IP明細存放於 iplist.txt,如下圖示
3.1.2 執行後 console 顯示如下
3.1.3 執行結果寫出 txt file,以便確認,並作為憑証存檔
3.2 實例二: 社外 VPN 連入確認
3.2.1 INPUT file :欲確認機器 IP iplist.txt 內容如下:
192.168.15.47 web1
192.168.15.48 web2
10.249.80.40 PXXXX03-PRD
10.249.80.41 PXXXX03-BKP
10.249.83.11 development_PC
10.249.80.162 HTXXXBT-01 TestDB_server
10.249.80.163 HXXXDB1-01 HA_DB_Server_1
10.249.80.164 HXTXDB2-01 HA_DB_Server_1
10.249.80.166 HXXXPDB-service OFS
10.249.80.167 HXXXAP1-01 AP_Server
10.249.80.168 HXXXAPT-01 Test_AP
10.249.80.169 HXXXSF-01 ShareFolder_server
3.2.2 OUTPUT file : 執行結果寫出 txt檔, 如下:
*** result of ping *** 2024/7/22
Ping start time: 22:53:04.53
---- ip ---- --result-- --- host ---
192.168.15.47 OK web1
192.168.15.48 OK web2
10.249.80.40 OK PCXXX03-PRD
10.249.80.41 OK PCXXX03-BKP
10.249.83.11 OK development PC
10.249.80.162 OK HXXXDBT-01 TestDB_server
10.249.80.163 OK HXXXDB1-01 HA_DB_Server_1
10.249.80.164 OK HXXXDB2-01 HA_DB_Server_1
10.249.80.166 OK HTXXXDB-service OFS
10.249.80.167 OK HXXXAP1-01 AP Server
10.249.80.168 OK HXXXAPT-01 Test AP Server
10.249.80.169 OK HXXXSF-01 Share Folder server
-------------------------------------
Finish time: 22:53:47.05
3.3 實例三 利用 WIFI,再VPN 連線 , 執行各棟網路設備S/W 之確認作業
3.3.1 INPUT file :網路設備S/W 機器 IP明細,如下圖
3.3.2 執行後 OUTPUT file : 如下 ==> 23台 , 1分 20秒 完成
4 改善前後
4.1 改善前 :
(1)對每一台設備,逐一手動下指令 執行,再人工觀看執行結果
(2)人工設備確認作業費時,經常疏漏或遺忘之現象發生
4.2 改善後:
(1)可針對大量多台設備,一併執行確認作業,節省工時,提高工作效率
(2)可顯示出設備確認結果一覽表,一目了然,若有異常設備發生,可及時對應解除異常狀況
(3)颱風假或例假日,非上班時段,擔當人員不必至公司,可快速確認社內設備是否正常運作
(4)只要確認本作業結果之list,便可勝任設備確認工作,不一定要IT專業技術人員,IT擔當可正常休假
5 將來運用
5.1 平日始作業檢查重要設備,例如(1) 生產線上設備 (2) 各棟建物網路設備 (3) 應用系統SAP等伺服器 (4)公司官網機器 (5)打卡鐘,監視器設備等等
5.2 電力定期維護 或異常斷電後,確認所有電腦,網路等相關設備
5.3 連休後 或年度定期 IT設備保養後,確認所有設備
5.4 各個應用系統之伺服器與各端末機機器之確認
5.5 颱風假或例假日,平日非上班時段,須確認設備狀況時,擔當不必至公司,仍可確認社內電腦設備
6 本作業bat設計如下:
echo off
rem ### r 是程式內全域參數, 故須放在最前面 ###
set r= NG
set ip_desc=
echo *** result of ping *** %DATE% > result_ping.txt
echo. >> result_ping.txt
echo Start time: %TIME% >> result_ping.txt
echo ---- ip ---- --result-- --- host --- >> result_ping.txt
For /f "skip=2 tokens=1* delims= " %%i in ('find "." "iplist.txt" ') do (
set r= NG
set ip_desc=%%j
CALL :Ping %%i %ip_desc%
)
echo ------------------------------------->> result_ping.txt
echo Finish time: %TIME% >> result_ping.txt
type result_ping.txt
pause finish --- 最小值 = 2ms,最大值 = 4ms,平均 = 3ms
goto :EOF
:Ping
rem ping 執行結果,再找出其中有 =..ms 即 "最小值 = 2ms,最大值 = 4ms,平均 = 3ms"
For /f "tokens=1-3 delims=" %%A in ( 'ping %1 ^| findstr /r "ms," ' ) do (
set r= OK
echo %%A
)
if %r% == OK (
echo PC = %1 is OK
echo %1 OK "%ip_desc%" >> result_ping.txt
) else (
echo PC = %1 is NG
echo %1 ---NG--- "%ip_desc%" >> result_ping.txt )
exit /b
------by linct-----