在 macOS 上測試端口是否開放,可通過以下三種常用方法實現(推薦優先使用系統自帶的?nc
?命令,簡單高效):
方法 1:用系統自帶?nc
(netcat)測試(最推薦)
nc
?是 macOS 自帶工具,無需安裝,適合快速測試 TCP/UDP 端口連通性。
命令格式
bash
nc -zv 目標地址 端口號
-z
:僅掃描端口,不發送實際數據(安全且高效);-v
:顯示詳細連接信息(成功 / 失敗會明確提示)。
示例操作
測試本地?
localhost
?的?8080
?端口:bash
nc -zv localhost 8080
- 若端口開放,返回類似:
Connection to localhost port 8080 [tcp/http] succeeded!
- 若端口關閉,返回類似:
nc: connectx to localhost port 8080 (tcp) failed: Connection refused
- 若端口開放,返回類似:
測試遠程服務器(如?
baidu.com
?的?443
?端口):bash
nc -zv baidu.com 443
方法 2:用?curl
?測試(適合 HTTP/HTTPS 端口)
curl
?也是 macOS 自帶工具,僅適用于 HTTP/HTTPS 服務的端口測試(如?80
/443
/8080
?等)。
命令格式
bash
curl -m 5 -I http://目標地址:端口號
-m 5
:設置超時時間為 5 秒(避免長時間等待);-I
:僅獲取 HTTP 響應頭(無需下載完整內容,快速判斷服務是否存活)。
示例操作
測試?http://passport.s.ecust.edu.cn:7081
?的端口連通性:
bash
curl -m 5 -I http://passport.s.ecust.edu.cn:7081
- 若端口開放且服務正常,返回類似:
HTTP/1.1 200 OK
(或其他 HTTP 狀態碼,如?302
?重定向); - 若端口關閉或超時,返回類似:
curl: (7) Failed to connect to ... Connection refused
方法 3:用?nmap
?測試(功能更強,需安裝)
nmap
?是專業網絡掃描工具,支持復雜端口掃描和服務識別,但需通過 Homebrew 安裝。
安裝步驟(首次使用需執行)
- 安裝 Homebrew(若未安裝):
bash
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
- 安裝?
nmap
:bash
brew install nmap
命令格式
bash
nmap -p 端口號 目標地址
-p
:指定要掃描的端口(可單個或范圍,如?-p 80,443
?或?-p 1-1000
)。
示例操作
測試?localhost
?的?80-100
?端口范圍:
bash
nmap -p 80-100 localhost
返回結果會列出每個端口的狀態(open
/closed
/filtered
?等)和對應的服務(如?http
/ssh
)。
三種方法對比
工具 | 優點 | 缺點 | 適用場景 |
---|---|---|---|
nc | 系統自帶、無需安裝、快速 | 僅支持基礎連通性測試 | 日常快速驗證端口是否開放 |
curl | 系統自帶、適合 HTTP 服務 | 僅限 HTTP/HTTPS 端口 | 測試 Web 服務端口(如 80/443) |
nmap | 功能強、支持復雜掃描 | 需安裝、掃描速度較慢 | 專業網絡診斷、批量端口掃描 |
根據需求選擇即可:日常快速測試用?nc
;Web 服務測試用?curl
;深度掃描用?nmap
。