參考來源:[Java] 使用java模擬ping和telnet的實現 小惡魔 - 電腦技術 - 生活日記 - 美食介紹 - AppleBOY
參考來源:Ping a server - Real's Java How-to
參考來源:[藍森林-自由軟件] - 怎麼用java來判斷能否ping通一IP
參考來源:JavaWorld@TW Java論壇 - [分享]使用Java呼叫Windows的外部程式(如:Ping)
// 缺點:回應太慢大約 4 秒且無法確定要設定多少時間
InetAddress ia = InetAddress.getByName(address);
reachable = ia.isReachable(5000);
參考來源:Java Ping - 企业应用 - Java - JavaEye论坛
// 缺點:ping 指令參數不統一
// for windows, linux 時參數不一樣
// windows:-n count、-w timeout (ms)
// linux:-c count、-W timeout
Process process = runtime.exec("ping -n 1 -w 1000 192.168.1.1");
InputStream is = process.getInputStream();
InputStreamReader isr = new InputStreamReader(is);
BufferedReader in = new BufferedReader(isr);
String line = null;
while ((line = in.readLine()) != null) {
if (line.startsWith("Reply from")) {
// 有回應
break;
} else if (line.startsWith("Request timed out.")) {
// 無回應
break;
}
}
isr.close();
in.close();