netstat 是查看網絡連接的命令,參數嘛,有-a -b -e -n-o -p -r -s -v
netstat -a 顯示當前的網絡連接狀況,TCP和UDP協議都會列出來,包括本地IP端口,遠程IP和端口,以及連接狀態
-b參數呢,可以和-n一起使用,如netstat -nb,會顯示連接網絡的程序名稱,也就是進程名稱,通常只顯示活動的連接,如果想顯示所有程序聯網情況,可以netstat -ab
netstat -o等價於netstat -no ,就是在每個連接上顯示進程的ID
-p 就是顯示指定協議的信息咯。如netstat -p TCP,顯示tcp協議的連接信息
-e 和-s通常一起使用,顯示統計的信息,比如發送和接受的包數目等等
-r顯示路由表的信息
-v 和-b參數差不多,但是比-b顯示的組件更詳細,可以一起使用,netstat -nbv
還有一個參數interval,是每隔幾秒顯是結果,即每隔幾秒執行一次命令
如netstat -nb 5 每隔5秒顯示一次統計結果
對於幾種狀態的說明:state
1.LISTENING:(Listening for a connection.)偵聽來自遠方的TCP端口的連接請求
2.SYN-SENT:(Active; sent SYN. Waiting for a matching connection request after having sent a connection request.)發送連接請求后等待匹配的連接請求,既向遠程主機發送連接請求
3.SYN-RECEIVED:(Sent and received SYN. Waiting for a confirming connection request acknowledgment after having both received and sent connection requests.)再收到和發送一個連接請求后等待對方對連接請求的確認,對方發送回來的確認連接信息
4.ESTABLISHED:(Connection established.)代表一個打開的連接
5.FIN-WAIT-1:(Closed; sent FIN.)等待遠程TCP連接中斷請求,或先前的連接中斷請求的確認
6.FIN-WAIT-2:(Closed; FIN is acknowledged; awaiting FIN.)從遠程TCP等待連接中斷請求
7.CLOSE-WAIT:(Received FIN; waiting to receive CLOSE.)等待從本地用戶發來的連接中斷請求
8.CLOSING:(Closed; exchanged FIN; waiting for FIN.)等待遠程TCP對連接中斷的確認
9.LAST-ACK:(Received FIN and CLOSE; waiting for FIN ACK.)等待原來的發向遠程TCP的連接中斷請求的確認
10.TIME-WAIT:(In 2 MSL (twice the maximum segment length) quiet wait after close. )等待足夠的時間以確保遠程TCP接收到連接中斷請求的確認
11.CLOSED:(Connection is closed.)沒有任何連接狀態
在命令提示符中比較常見,能夠捕獲到的狀態通常有LISTENING、ESTABLISHED、SYN-SENT、FIN-WAIT-1、LAST-ACK、TIME-WAIT、CLOSED