技術文章 · IT 指令工具箱

查 Port 與連線:ss、netstat、lsof 常用指令

整理 Linux ss、netstat 與 macOS/Linux lsof 查 LISTEN port、TCP 連線、程序 PID、介面與 Unix socket 的常用指令。

作者 Steve Chen · 發布  · 約 4 分鐘閱讀

IT 指令工具箱 — 廷皓技術專欄插圖

要查「誰占用 8080」或「服務有沒有 listen」,先看 socket 綁在哪個位址,再對 PID、服務管理器與防火牆。只看到 LISTEN 不代表外部一定連得到。

20 組範例LinuxmacOSWindows netstat查核日期:2026-08-11
動手前:輸出可能包含內網 IP、程序名稱與使用者。停止程序前先確認它屬於哪個服務;不要看到 port 被占用就直接 kill -9。

Linux ss

列出 TCP/UDP listening socketLinux

ss -lntup

看程序資訊可能需要較高權限。

只看 TCP listenLinux

ss -lnt

-n 不解析服務名稱,顯示較快。

只看 UDP listenLinux

ss -lnu

UDP 沒有 TCP 那種 established 狀態。

看所有 TCP 連線Linux

ss -ant

包含 LISTEN、ESTAB、TIME-WAIT 等。

篩選目的 port 443Linux

ss -ant 'dport = :443'

filter 語法依 ss 版本。

篩選來源 port 22Linux

ss -ant 'sport = :22'

查看 SSH server 連線。

看 socket 摘要Linux

ss -s

快速了解 TCP 狀態分布。

看 Unix domain socketLinux

ss -lx

本機服務間通訊常用。

lsof 查程序

查誰占用 TCP 8080Linux/macOS

lsof -nP -iTCP:8080 -sTCP:LISTEN

-nP 避免 DNS 與服務名稱解析。

列出所有 TCP listenLinux/macOS

lsof -nP -iTCP -sTCP:LISTEN

可對 PID 與 COMMAND。

查單一程序開啟的網路Linux/macOS

lsof -nP -a -p 1234 -i

-a 代表條件 AND;PID 換成實際值。

查單一檔案被誰開啟Linux/macOS

lsof /var/log/app.log

log rotate 排查常用。

找已刪除仍開啟檔案Linux

lsof +L1

可能是磁碟空間沒釋放的原因。

查某個 mount point 使用者Linux/macOS

lsof +D /mnt/data

+D 會遞迴且可能很慢,先限制範圍。

netstat 與 Windows

Linux 傳統 TCP listenLinux net-tools

netstat -lntp

新系統優先用 ss;看 PID 可能需較高權限。

macOS 看 TCP listenmacOS

netstat -anv -p tcp | grep LISTEN

BSD netstat 參數與 Linux 不同。

Windows 看連線與 PIDWindows CMD

netstat -ano

最後一欄是 PID,可用 tasklist 對照。

Windows 篩 8080Windows CMD

netstat -ano | findstr :8080

可能同時命中本機與遠端 port。

Windows 對 PID 查程序Windows CMD

tasklist /FI "PID eq 1234"

把 1234 換成 netstat 查到的 PID。

PowerShell 查 TCP listenWindows PowerShell

Get-NetTCPConnection -State Listen | Sort-Object LocalPort

可再用 OwningProcess 對程序。

怎麼確認有做對

  • 確認 socket 綁 127.0.0.1、特定介面還是 0.0.0.0/::。
  • 用程序管理器或 systemctl 對應 PID。
  • 從另一台主機測 TCP port,分清楚 listen 與網路可達性。

常見錯誤

  • LISTEN 就認定外網可達。
  • 忽略 IPv6 的 :: listener。
  • 看到 PID 就直接終止,沒有確認 supervisor。
  • lsof +D 對大型目錄造成長時間掃描。

版本與官方文件

參數會隨工具版本與作業系統實作改變。正式環境先用 --help、-h 或系統內建說明確認,再以當版官方文件為準。

聯絡廷皓討論 看更多文章