linux查詢端口的方法:1、使用netstat命令,語法“netstat [-acCeFghilMnNoprstuvVwx][-A][–ip]”;2、使用ss命令,可顯示詳細的TCP和連接狀態的信息;3、使用lsof命令。
本教程操作環境:linux5.9.8系統、Dell G3電腦。
linux查詢端口
一、使用 netstat 檢查端口
netstat 是一個命令行工具,可以提供有關網絡連接的信息。
顯示所有已開放端口,請使用以下命令:netstat -anp?
要列出正在偵聽的所有 TCP 或 udp 端口,包括使用端口和套接字狀態的服務,請使用以下命令:netstat -tunlp
此命令中使用的選項具有以下含義:
-t – 顯示 TCP 端口。-u – 顯示 UDP 端口。-n – 顯示數字地址而不是主機名。-l – 僅顯示偵聽端口。-p – 顯示進程的 PID 和名稱。僅當您以 root 或 sudo 用戶身份運行命令時,才會顯示此信息。
查詢指定端口通過grep過濾:netstat -tnlp | grep :80
顯示示例:
注:Proto – 套接字使用的協議。Local Address – 進程偵聽的 IP 地址和端口號。PID/Program name – PID 和進程名稱。
二、使用 ss 檢查端口
ss 是新的 netstat,命令選項大致相同。它缺少一些 netstat 功能,但暴露了更多的 TCP 狀態,而且速度稍快。
使用示例:ss -tunlp
三、使用 lsof 檢查端口
lsof 是一個功能強大的命令行實用程序,它提供有關進程打開的文件的信息。
在 Linux 中,一切都是文件,可以將套接字視為寫入網絡的文件。
要使用 lsof 獲取所有偵聽 TCP 端口的列表:lsof -nP -iTCP -sTCP:LISTEN
使用的選項如下:-n – 不要將端口號轉換為端口名稱。-p – 不要解析主機名,顯示數字地址。-iTCP -sTCP:LISTEN – 僅顯示 TCP 協議狀態為 LISTEN 的網絡文件。
使用示例:
要查找正在偵聽特定端口(例如 3306)的進程,請使用以下命令:sudo lsof -nP -iTCP:3306 -sTCP:LISTEN
相關推薦:《Linux視頻教程》