您好,登錄后才能下訂單哦!
在使用Linux操作系統時,有時需要測試端口的連通性,以確認系統的TCP、UDP協議棧是否可以正常運行。本文就對此進行簡單的說明。
TCP端口測試
使用 telnet 測試現有監聽端口連通性
可以使用 Linux 自帶的 telnet 工具來測試現有端口的連通性,測試命令為:
telnet <host> <port>
# host 是目標服務器 IP,port是待測試端口號
示例:
可以如下指令測試 22 端口的連通性:
telnet 127.0.0.1 22
若成功連接,會顯示類似如下信息。不同 Linux 系統環境下,顯示可能有所不同,但通常若包含 "Connected to ..." 信息,則說明連接成功。
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
SSH-2.0-OpenSSH_5.3
另外, Windows 環境下,成功連接后,會出現一個新窗口(有回顯或無任何回顯)。 如果連接失敗,會顯示類似如下信息:
C:\>telnet 127.0.0.1 1111
正在連接127.0.0.1...無法打開到主機的連接。 在端口 1111: 連接失敗
創建新的監聽端口測試
可以使用 python 自帶的 Web 服務器用于臨時創建新的監聽端口進行測試。用法如下:
python -m SimpleHTTPServer <所需端口號>
示例輸出:
[root@centos]# python -m SimpleHTTPServer 123
Serving HTTP on 0.0.0.0 port 123 ...
說明:啟動的 Web 服務是單線程的,以當前目錄為根目錄,一次只能接受一個請求,一般只用來測試。測試完成按 Ctr +C 終止進程即可。
UDP端口測試
telnet 僅能用于 TCP 協議的端口測試,若要對UDP端口進行測試,可以使用 nc 程序。
使用如下指令確認系統內是否已經安裝了 nc:
which nc
示例輸出:
[root@centos]# which nc
/usr/bin/nc
如果 nc 未被安裝,根據操作系統的不同, 使用yum 或 apt-get 等工具進行安裝,本文不再詳述。
使用如下指令測試目標服務器 UDP 端口的連通性:
用法:
nc -vuz <目標服務器 IP> <待測試端口>
示例輸出:
[root@centos]# nc -vuz 192.168.0.1 25
Connection to 192.168.0.1 25 port [udp/smtp] succeeded!
# 若返回結果中包含 "succeeded" 字樣,則說明相應的端口訪問正常。如果無任何返回信息,則說明相應端口訪問失敗。
參數說明:
-v 詳細輸出(用兩個-v可得到更詳細的內容)
-u 使用UDP傳輸協議
-z 讓nc只掃描端口,不發送任何的數據
備注:以上內容僅供搭建參考,文章參考來源http://raksmart.idcspy.com,轉載請注明。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。