【轉】Linux下查看TCP網絡連接情況


查看TCP網絡連接情況
命令:netstat -n | awk ‘/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}’
www.2cto.com
返回結果示例:
Cmd代碼
LAST_ACK 5
SYN_RECV 30
ESTABLISHED 15
FIN_WAIT1 51
FIN_WAIT2 5
TIME_WAIT 10
其中的SYN_RECV表示正在等待處理的請求數;ESTABLISHED表示正常數據傳輸狀態;TIME_WAIT表示處理完畢,等待超時結束的請求數。
命令:netstat -n | awk ‘/^tcp/’
Cmd代碼
tcp        0      0 192.168.1.102:8879          192.168.2.199:4516          TIME_WAIT
tcp        0      0 192.168.1.102:8879          192.168.2.199:4520          TIME_WAIT
tcp        0      0 192.168.1.102:8879          192.168.2.199:4525          TIME_WAIT
tcp        0      0 192.168.1.102:56488         192.168.2.103:1521          ESTABLISHED
tcp        0      0 192.168.1.102:56482         192.168.2.103:1521          ESTABLISHED
tcp        0      0 192.168.1.102:56483         192.168.2.103:1521          ESTABLISHED
www.2cto.com
狀態:描述
CLOSED:無連接是活動的或正在進行
LISTEN:服務器在等待進入呼叫
SYN_RECV:一個連接請求已經到達,等待確認
SYN_SENT:應用已經開始,打開一個連接
ESTABLISHED:正常數據傳輸狀態
FIN_WAIT1:應用說它已經完成
FIN_WAIT2:另一邊已同意釋放
ITMED_WAIT:等待所有分組死掉
CLOSING:兩邊同時嘗試關閉
TIME_WAIT:另一邊已初始化一個釋放
LAST_ACK:等待所有分組死掉
服務器上的一些統計數據: 

 

1)統計80端口連接數
netstat -nat|grep -i “80″|wc -l

2)統計httpd協議連接數
ps -ef|grep httpd|wc -l

3)、統計已連接上的,狀態為“established
netstat -na|grep ESTABLISHED|wc -l

4)、查出哪個IP地址連接最多,將其封了.
netstat -na|grep ESTABLISHED|awk {print $5}|awk -F: {print $1}|sort|uniq -c|sort -r +0n

netstat -na|grep SYN|awk {print $5}|awk -F: {print $1}|sort|uniq -c|sort -r +0n

———————————————————————————————

1、查看apache當前並發訪問數:
netstat -an | grep ESTABLISHED | wc -l

對比httpd.conf中MaxClients的數字差距多少。

2、查看有多少個進程數:
ps aux|grep httpd|wc -l

3、可以使用如下參數查看數據
server-status?auto

#ps -ef|grep httpd|wc -l
1388
統計httpd進程數,連個請求會啟動一個進程,使用於Apache服務器。
表示Apache能夠處理1388個並發請求,這個值Apache可根據負載情況自動調整。

#netstat -nat|grep -i “80″|wc -l
4341
netstat -an會打印系統當前網絡鏈接狀態,而grep -i “80″是用來提取與80端口有關的連接的,wc -l進行連接數統計。
最終返回的數字就是當前所有80端口的請求總數。

#netstat -na|grep ESTABLISHED|wc -l
376
netstat -an會打印系統當前網絡鏈接狀態,而grep ESTABLISHED 提取出已建立連接的信息。 然后wc -l統計。
最終返回的數字就是當前所有80端口的已建立連接的總數。

netstat -nat||grep ESTABLISHED|wc – 可查看所有建立連接的詳細記錄

查看Apache的並發請求數及其TCP連接狀態:
Linux命令:
netstat -n | awk ‘/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}’

返回結果示例:
LAST_ACK 5
SYN_RECV 30
ESTABLISHED 1597
FIN_WAIT1 51
FIN_WAIT2 504
TIME_WAIT 1057
其中的
SYN_RECV表示正在等待處理的請求數;
ESTABLISHED表示正常數據傳輸狀態;
TIME_WAIT表示處理完畢,等待超時結束的請求數。

———————————————————————————————

查看httpd進程數(即prefork模式下Apache能夠處理的並發請求數):
Linux命令:
ps -ef | grep httpd | wc -l

查看Apache的並發請求數及其TCP連接狀態:

Linux命令:
netstat -n | awk ‘/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}’
返回結果示例:
LAST_ACK 5
SYN_RECV 30
ESTABLISHED 1597
FIN_WAIT1 51
FIN_WAIT2 504
TIME_WAIT 1057

說明:
SYN_RECV表示正在等待處理的請求數;
ESTABLISHED表示正常數據傳輸狀態;
TIME_WAIT表示處理完畢,等待超時結束的請求數。

1。查看tcp連接的命令

netstat -n | awk ‘/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}’

例如輸出:

SYN_RECV 1
CLOSE_WAIT 25
ESTABLISHED 122
FIN_WAIT1 1
FIN_WAIT2 12
TIME_WAIT 202

其中的SYN_RECV表示正在等待處理的請求數;ESTABLISHED表示正常數據傳輸狀態;TIME_WAIT表示處理完畢,等待超時結束的請求數

CLOSED:無連接是活動的或正在進行
LISTEN:服務器在等待進入呼叫
SYN_RECV:一個連接請求已經到達,等待確認
SYN_SENT:應用已經開始,打開一個連接
ESTABLISHED:正常數據傳輸狀態
FIN_WAIT1:應用說它已經完成
FIN_WAIT2:另一邊已同意釋放
ITMED_WAIT:等待所有分組死掉
CLOSING:兩邊同時嘗試關閉
TIME_WAIT:另一邊已初始化一個釋放
LAST_ACK:等待所有分組死掉

linux下查看TCP網絡連接情況

 

2。lsof

lsof命令的原始功能是列出打開的文件的進程
lsof -i :22 知道22端口現在運行什么程序

lsof       顯示所有的進程

查看所屬root用戶進程所打開的文件類型為txt的文件: # lsof -a -u root -d txt


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM