一、簡介
netstat 命令用於顯示各種網絡相關信息,如網絡連接,路由表,接口狀態(Interface Statistics),masquerade 連接,多播成員(Multicast Memberships)等等。
二、輸出信息含義
執行 netstat 後,其輸出結果如下:
激活Internet連接 (w/o 服務器)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 localhost:5347 localhost:59660 ESTABLISHED
tcp 0 0 node1.linuxidc.co:34576 121.40.43.188:https ESTABLISHED
tcp 0 0 node1.linuxidc.co:59434 61.135.169.125:https ESTABLISHED
tcp 0 0 node1.linuxidc.co:35828 node1.linuxidc.co:https ESTABLISHED
tcp 0 0 node1.linuxidc.co:36734 47.110.223.99:https ESTABLISHED
tcp 0 0 node1.linuxidc.co:37758 218.11.11.245:https ESTABLISHED
tcp 0 0 localhost:5280 localhost:52216 TIME_WAIT
活躍的UNIX域套接字 (w/o 服務器)
Proto RefCnt Flags Type State I-Node 路徑
unix 2 [ ] 數據報 38509 /run/user/1000/systemd/notify
unix 2 [ ] 數據報 23508 /run/user/121/systemd/notify
unix 2 [ ] 數據報 15233 /run/systemd/journal/syslog
unix 9 [ ] 數據報 15237 /run/systemd/journal/socket
unix 24 [ ] 數據報 12822 /run/systemd/journal/dev-log
unix 2 [ ] 數據報 23464 /run/wpa_supplicant/wlp3s0
unix 3 [ ] 數據報 15218 /run/systemd/notify
從整體上看,netstat 的輸出結果可以分爲兩個部分:
一個是 Active Internet connections,稱爲有源 TCP 連接,其中“Recv-Q”和“Send-Q”指的是 接收隊列 和 發送隊列 。這些數字一般都應該是 0 。如果不是則表示數據包正在隊列中堆積,這種情況只能在非常少的情況見到。
另一個是 Active UNIX domain sockets,稱爲有源 Unix 域套接口(和網絡套接字一樣,但是隻能用於本機通信,性能可以提高一倍)。
標籤 | 功能 |
---|---|
Proto | 顯示連接使用的協議。 |
RefCnt | 表示連接到本套接口上的進程號。 |
Types | 顯示套接口的類型。 |
State | 顯示套接口當前的狀態。 |
Path | 表示連接到套接口的其它進程使用的路徑名。 |
三、常見參數
參數 | 功能 |
---|---|
-a(all) | 顯示所有選項,默認不顯示 LISTEN 相關。 |
-t (tcp) | 僅顯示tcp相關選項。 |
-u(udp) | 僅顯示udp相關選項。 |
-n | 拒絕顯示別名,能顯示數字的全部轉化成數字。 |
-l | 僅列出有在 Listen (監聽) 的服務狀態。 |
-p | 顯示建立相關鏈接的程序名。 |
-r | 顯示路由信息,路由表。 |
-e | 顯示擴展信息,例如 uid 等。 |
-s | 按各個協議進行統計。 |
-c | 每隔一個固定時間,執行該netstat命令。 |
(SAW:Game Over!)