檢測埠還在用telnet?太落伍把
有沒有批量檢測的方法?有的。我們用nc就可以快速檢測埠的開放性。
nc檢測埠的用法
nc -z -w 10 %ip% %port%
-z表示檢測或者掃瞄埠
-w表示超時時間
-u表示使用udp協議
例如:[@s136.ipcpu.com ~]# nc -z -w 10 -u 8.8.8.8 53
connection to 8.8.8.8 53 port [udp/domain] succeeded!
[@s136.ipcpu.com ~]# nc -z -w 10 8.8.8.8 53
connection to 8.8.8.8 53 port [tcp/domain] succeeded!
[@s136.ipcpu.com ~]# echo $?
0[@s136.ipcpu.com ~]# nc -z -w 10 8.8.8.7 53
[@s136.ipcpu.com ~]# echo $?
1[@s136.ipcpu.com ~]#
埠成功聯通返回值是0,提示succeeded;否則返回1,不提示任何資料
假如我們有這樣一堆ip和埠。
#cat ports
119.181.69.96 8080
119.181.118.38 8000
119.181.20.18 8080
119.181.69.37 8080
我們可以寫這樣乙個指令碼來批量檢測埠是否開放:
cat testport | while read line
do#nc -z -w 10 $line
nc -z -w 10 $line > /dev/null 2>&1
if [ $? -eq 0 ]
then
echo $line:ok
else
echo $line:fail
fidone
好了,我們的執行結果如下:
119.181.69.96 8080:ok
119.181.118.38 8000:ok
119.181.20.18 8080:fail
119.181.69.37 8080:ok
shell指令碼批量測試埠連通性
最近在工作中遇到了需要批量檢測特定埠連通性的情況。本來想用nmap埠掃瞄檢測,但一般來說,在沒有經過同意的情況下執行埠掃瞄,是可以被視為網路攻擊行為的。為了避免不必要的麻煩,也懶得找領導,所以自己編寫了指令碼用telnet測試。這裡可以準備兩個檔案 start.sh script.exp start...
Linux 測試埠連通性
linux系統有時候需要測試某個埠的連通性,使用者可以參考如下方法來測試。telnet為使用者提供了在本地計算機上完成遠端主機工作的能力,因此可以通過telnet來測試埠的連通性,具體用法格式 telnet ip port 說明 port 是埠,比如80 如果telnet連線不存在的埠,那會如下圖所...
Linux 測試埠連通常用方法
1 telnet 用法 telnet ip port 1 telnet連線不存在的埠 telnet 1.1.1.1 8 trying 1.1.1.1.telnet connect to address 1.1.1.1 connection timed out 2 telnet 鏈結存在埠 telne...