通常是Windows 或是 Linux,除非你是有專業一點的工具如: nmap。
簡單說
Windows 下用 telnet
Windows 下用 telnet
Linux 下用nc
-------------------
Windows 預設是沒有裝telnet的,但你可以點進,新增移除裡面,有個[開啟或關閉Windows功能],再勾選[Telnet用戶端],確定後,就安裝開好這個telnet功能了。(參考下圖)
TCP 是有問有回答。
UDP 是有問,不會回。但其實是有問不一定回答。
UDP 是有問,不會回。但其實是有問不一定回答。
TCP protocol是通過建立連接的方法,準確判斷是否開放。
所以判斷TCP Port是否開放,比較容易。
ex:
windows 為例: (DOS模式)
Command:
telnet [IP] [port number]
若指標是閃爍的,代表這個port是通的。
若提示 [正連線到 ip:xxx.xxx.xxx.xxx...無法開啟到主機的連線, 在連接埠 333: 連線失敗],代表這個port是不開放的。
Linux為例:
Command:
$ nc -vz xxx.xxx.xxx.xxx port
$ nc -vz 142.251.43.14 443
tsa03s08-in-f14.1e100.net [142.251.43.14] 443 (https) open
$ nc -vz 142.251.43.14 53
tsa03s08-in-f14.1e100.net [142.251.43.14] 53 (domain) : Connection refused
但有兩種特殊情況,第一種是如果有對這個Port發送data,它回應了,這證明它有開放。但是它若有要隱藏是可以不要回應的。
第二種是某些主機若你連接沒有開放的port,它會回應ICMP錯誤訊息(ICMP_PORT_UNREACH),這種就可以確定沒有開放。
Telnet 無法測試UDP,我們用Linux nc來測試。
ex:
$ nc -vzu 168.95.1.1 520
dns.hinet.net [168.95.1.1] 520 (route) open
若你測試有開放,但只是有可能開放,不一定正確。
若你沒有得到任何回應,這種可以確定,UDP Port沒有開放。
沒有留言:
張貼留言