我查到的資料說是 23 port(這也是 telnet 預設的port!)
但我發現很矛盾。
舉例,區網內有一個ip:192.168.1.101確定是活著的,
用ping去ping它回覆如下
「回覆自 192.168.1.101: 位元組=32 時間=1ms TTL=63」
但一般設備應該不會開啟 23 port服務才是,
所以我驗證想法
使用網路建議的方法 telnet 192.168.1.102 23時, 也的確連線不上, 回應如下:
「正連線到 192.168.1.101...無法開啟到主機的連線, 在連接埠 23: 連線失敗」
實際執行 paping 指定23 port 的指令的確是回傳該設備的 23 port 沒有打開!回覆如下:
paping v1.5.5 - Copyright (c) 2011 Mike Lovell
Connecting to 192.168.1.101 on TCP 23:
Connection timed out
Connection timed out
Connection timed out
Connection timed out
Connection statistics:
Attempted = 4, Connected = 0, Failed = 4 (100.00%)
Approximate connection times:
Minimum = 0.00ms, Maximum = 0.00ms, Average = 0.00ms
所以ping 的指令卻能正確傳回設備活著的訊息難道這表示ping不是透過檢查23 port是否打開來判斷的?
如果ping不是透過檢查23 port是否打開來判斷的, 那它又是依據什麼來判斷的?
不知道我哪裡弄錯了?
Port是TCP和UDP的東西
Ping是ICMP的東西
你可能要先去熟習一下通訊工程裡面的 OSI 七層模型:
Ping 使用 ICMP 協定, 他是在 OSI 第三層裡面運行, 不會到第四層;
而你所熟知的 TCP/UDP port 屬於第四層協定, 所以 ICMP 用不到它們:
ICMP 協定並不是透過 Port 互連, 他使用 IP Datagram 來傳遞與回應:
OSI 網路七層模型的說明:
http://noc.twaren.net/~liangmc/nuk/nsm982/exam/A0963355.pptx
SON, 你應該用arp去來檢查
因為DEVICE也可以不回應PING的
windows的話, cmd指令是 arp -a