netstat指令用來列印Linux中網絡系統的狀态資訊,可讓你得知整個Linux系統的網絡情況
-a (all)顯示所有選項,預設不顯示LISTEN相關
-t (tcp)僅顯示tcp相關選項
-u (udp)僅顯示udp相關選項
-n 拒絕顯示别名,能顯示數字的全部轉化成數字
-l 僅列出有在 Listen (監聽) 的服務狀态
-p 顯示建立相關連結的程式名
-r 顯示路由資訊,路由表
-e 顯示擴充資訊,例如uid等
-s 按各個協定進行統計
-c 每隔一個固定時間,執行該netstat指令
常用:netstat -lnpt
netstat -an
1.檢視TCP連接配接狀态
netstat -nat |awk ‘{print $6}’|sort|uniq -c|sort -rn
netstat -n | awk ‘/^tcp/ {++S[$NF]};END {for(a in S) print a, S[a]}’
netstat -n | awk ‘/^tcp/ {++arr[$NF]};END {for(k in arr) print k,”\t”,arr[k]}'
netstat -n |awk ‘/^tcp/ {print $NF}’|sort|uniq -c|sort -rn
netstat -ant | awk ‘{print $NF}’ | grep -v ‘[a-z]‘ | sort | uniq -c
2.查找請求數請20個IP(常用于查找攻來源)
netstat -anlp|grep 80|grep tcp|awk ‘{print $5}’|awk -F: ‘{print $1}’|sort|uniq -c|sort -nr|head -n20
3.用tcpdump嗅探80端口的通路數最高的ip
tcpdump -i eth0 -tnn dst port 80 -c 1000 | awk -F”.” ‘{print $1″.”$2″.”$3″.”$4}’ | sort | uniq -c | sort -nr |head -10
4.查找較多time_wait連接配接
netstat -n|grep TIME_WAIT|awk ‘{print $5}’|sort|uniq -c|sort -rn|head -n10
5.找查較多的SYN連接配接
netstat -an | grep SYN | awk ‘{print $5}’ | awk -F: ‘{print $1}’ | sort | uniq -c | sort -nr | more
6.根據端口列程序
netstat -ntlp | grep 80 | awk ‘{print $7}’ | cut -d/ -f1
本文轉自super李導51CTO部落格,原文連結:http://blog.51cto.com/superleedo/1886248 ,如需轉載請自行聯系原作者