热门问题
时间线
聊天
视角

netstat

命令列工具 来自维基百科,自由的百科全书

Netstat
Remove ads

netstat是一個基於命令行界面網路實用工具,可顯示當前的網路狀態,包括傳輸控制協議層的連線狀況、路由表網路接口狀態和網路協議的統計訊息等[1]netstat命令適用於類Unix系統(如macOSLinuxSolarisBSD)、IBM OS/2Windows NT操作系統家族(如Windows XPWindows VistaWindows 7Windows 8Windows 10[2][3]

事实速览 操作系統, 類型 ...

netstat可用於查找網路中的問題,並可通過計算網路流量來度量網路性能[4][5]。儘管該工具仍然被包含在許多Linux發行版中,但基本都被看作過時、應被替代的工具[6][7][8][9]

Linux上,推薦使用ss替代netstat,使用ip route替代netstat -r,使用ip -s link替代netstat -i,使用ip maddr替代netstat -g[10][11][12][13]

Remove ads

命令參數

命令netstat參數必須以連字符(-)而非斜槓(/)為前綴。並非所有平台都支持某些參數[1]

更多信息 參數, 描述 ...
Remove ads

統計訊息

  • Proto網路協議,包括傳輸控制協議TCP)和用戶數據報協議UDP[26]
  • Local Address:本地計算機的IP地址和正在使用的端口號。除非使用-n參數,否則將顯示與IP地址和端口對應的主機名稱。如果主機正在偵聽所有端口,則主機名顯示為星號(*)。如果端口尚未建立,則端口號顯示為星號[27]
  • Foreign Address:遠程計算機的IP地址和正在使用的端口號。除非指定了-n參數,否則將顯示與IP地址和端口對應的主機名稱。如果端口尚未建立,則端口號顯示為星號(*)[28]
  • State:TCP連接的狀態,可能的狀態包括CLOSE_WAITCLOSEDESTABLISHEDFIN_WAIT_1FIN_WAIT_2LAST_ACKLISTENSYN_RECEIVEDSYN_SENDTIME_WAIT[29]

命令範例

Thumb
macOS終端運行netstat

要僅顯示TCP或UDP協議的統計訊息,請鍵入以下命令之一[30]

netstat -sp tcp

netstat -sp udp

類Unix系統[1][3][9][31][32]

顯示進程ID為「pid」的進程打開的所有端口:

netstat -aop | grep "pid"

持續更新活動中的TCP和UDP連接,但主機地址和端口號以數字形式表示,並顯示哪些進程正在使用這些連接:

sudo netstat -nutpacw

Microsoft Windows[14]

顯示活動的TCP連接和關聯的進程ID,每5秒為一個更新周期(僅適用於基於Windows NT的操作系統或裝有修補程序的Windows 2000):

netstat -o 5

顯示活動中的TCP連接和關聯的進程ID,但主機地址和端口號以數字形式表示(僅適用於基於Windows NT的操作系統或裝有修補程序的Windows 2000):

netstat -no

應用(類UNIX系統)

更多信息 命令, 說明[4][9] ...
Remove ads

通配符

netstat命令的輸出結果中,星號(*)為通配符,表示「所有」[33][34]

例如:

....Local Address Foreign Address State
... *:smtp          *:*   LISTEN

在輸出結果中,*:smtp表示該進程正在本地計算機的所有網路接口上監聽所有映射SMTP的端口,此處的星號有時會被0.0.0.0代替,意義不改變。*:*中的第一個星號表示連接可以來自任何IP地址,第二個星號表示連接可以來自遠程計算機上的任何端口[25][33][34][35]

參考文獻

外部連結

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads