在使用Linux操作系統(tǒng)時,有時需要測試端口的連通性,以確認(rèn)系統(tǒng)的TCP、UDP協(xié)議棧是否可以正常運行。本文就對此進(jìn)行簡單的說明。
創(chuàng)新互聯(lián)是網(wǎng)站建設(shè)技術(shù)企業(yè),為成都企業(yè)提供專業(yè)的成都網(wǎng)站設(shè)計、成都網(wǎng)站制作,網(wǎng)站設(shè)計,網(wǎng)站制作,網(wǎng)站改版等技術(shù)服務(wù)。擁有十多年豐富建站經(jīng)驗和眾多成功案例,為您定制適合企業(yè)的網(wǎng)站。十多年品質(zhì),值得信賴!TCP端口測試
使用 telnet 測試現(xiàn)有監(jiān)聽端口連通性
可以使用 Linux 自帶的 telnet 工具來測試現(xiàn)有端口的連通性,測試命令為:
telnet
# host 是目標(biāo)服務(wù)器 IP,port是待測試端口號
示例:
可以如下指令測試 22 端口的連通性:
telnet 127.0.0.1 22
若成功連接,會顯示類似如下信息。不同 Linux 系統(tǒng)環(huán)境下,顯示可能有所不同,但通常若包含 "Connected to ..." 信息,則說明連接成功。
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
SSH-2.0-OpenSSH_5.3
另外, Windows 環(huán)境下,成功連接后,會出現(xiàn)一個新窗口(有回顯或無任何回顯)。 如果連接失敗,會顯示類似如下信息:
C:\>telnet 127.0.0.1 1111
正在連接127.0.0.1...無法打開到主機(jī)的連接。 在端口 1111: 連接失敗
創(chuàng)建新的監(jiān)聽端口測試
可以使用 python 自帶的 Web 服務(wù)器用于臨時創(chuàng)建新的監(jiān)聽端口進(jìn)行測試。用法如下:
python -m SimpleHTTPServer <所需端口號>
示例輸出:
[root@centos]# python -m SimpleHTTPServer 123
Serving HTTP on 0.0.0.0 port 123 ...
說明:啟動的 Web 服務(wù)是單線程的,以當(dāng)前目錄為根目錄,一次只能接受一個請求,一般只用來測試。測試完成按 Ctr +C 終止進(jìn)程即可。
UDP端口測試
telnet 僅能用于 TCP 協(xié)議的端口測試,若要對UDP端口進(jìn)行測試,可以使用 nc 程序。
使用如下指令確認(rèn)系統(tǒng)內(nèi)是否已經(jīng)安裝了 nc:
which nc
示例輸出:
[root@centos]# which nc
/usr/bin/nc
如果 nc 未被安裝,根據(jù)操作系統(tǒng)的不同, 使用yum 或 apt-get 等工具進(jìn)行安裝,本文不再詳述。
使用如下指令測試目標(biāo)服務(wù)器 UDP 端口的連通性:
用法:
nc -vuz <目標(biāo)服務(wù)器 IP> <待測試端口>
示例輸出:
[root@centos]# nc -vuz 192.168.0.1 25
Connection to 192.168.0.1 25 port [udp/smtp] succeeded!
# 若返回結(jié)果中包含 "succeeded" 字樣,則說明相應(yīng)的端口訪問正常。如果無任何返回信息,則說明相應(yīng)端口訪問失敗。
參數(shù)說明:
-v 詳細(xì)輸出(用兩個-v可得到更詳細(xì)的內(nèi)容)
-u 使用UDP傳輸協(xié)議
-z 讓nc只掃描端口,不發(fā)送任何的數(shù)據(jù)
備注:以上內(nèi)容僅供搭建參考,文章參考來源http://raksmart.idcspy.com,轉(zhuǎn)載請注明。