簡介
Netstat 命令用于顯示各種網絡相關信息,如網絡連接,路由表,接口狀態 (Interface Statistics),masquerade 連接,多播成員 (Multicast Memberships) 等等。
常見參數
-a (all)顯示所有選項,默認不顯示LISTEN相關
-t (tcp)僅顯示tcp相關選項
-u (udp)僅顯示udp相關選項
-n 拒絕顯示別名,能顯示數字的全部轉化成數字。
-l 僅列出有在 Listen (監聽) 的服務狀態-p 顯示建立相關鏈接的程序名
-r 顯示路由信息,路由表
-e 顯示擴展信息,例如uid等
-s 按各個協議進行統計
-c 每隔一個固定時間,執行該netstat命令。
提示:LISTEN和LISTENING的狀態只有用-a或者-l才能看到
常見命令實例
1.列出所有端口 (包括監聽和未監聽的)
- 列出所有端口 netstat -a
2. 列出所有 tcp 端口 netstat -at
3. 列出所有 udp 端口 netstat -au
列出所有處于監聽狀態的 Sockets
- 只顯示監聽端口 netstat -l(太多了,不截圖了)
- 只列出所有監聽 tcp 端口 netstat -lt
- 只列出所有監聽 udp 端口 netstat -lu
剩下的就不截圖說明了
3. 顯示每個協議的統計信息
- 顯示所有端口的統計信息 netstat -s
- 顯示 TCP端口的統計信息 netstat -st
- UDP 端口的統計信息 netstat -su
4. 在 netstat 輸出中顯示 PID 和進程名稱 netstat -p
5. 在 netstat 輸出中不顯示主機,端口和用戶名 (host, port or user)
6. 顯示核心路由信息 netstat -r
7. 顯示系統不支持的地址族 (netstat --verbose)
8.找出程序運行的端口
-
netstat -ap | grep ssh
并不是所有的進程都能找到,沒有權限的會不顯示,使用 root 權限查看所有的信息。 -
找出運行在指定端口的進程
netstat -an | grep ‘:22’
還有些不常用的,如果需要用就自行百度