2011-01-20

[Linux] netstat 查看網路連線的好工具

netstat 可以讓你看到網路連線等等許多的資料,
不過也要會用才找的到你想要的東西...


鳥哥介紹的指令:
列出目前的路由表狀態,且以 IP 及 port number 顯示
$ netstat -rn

列出目前的所有網路連線狀態,使用 IP 與 port number
$ netstat -an

秀出目前已經啟動的網路服務
$ netstat -tulnp

觀察本機上頭所有的網路連線狀態
$ netstat -atunp


以下是其他實用的 netstat 語法,可以檢查主機的連線數量:
顯示主機上所有已建立的連線。
$ netstat -na

顯示所有 port 80 的連線,並把結果排序。
$ netstat -an | grep :80 | sort

列出主機上有多少個 SYNC_REC,一般上這個數字應該相當低。
$ netstat -n -p|grep SYN_REC | wc -l

同樣是列出 SYNC_REC,但不只列出數字,而是將每個 SYNC_REC 的連線列出。
$ netstat -n -p | grep SYN_REC | sort -u

列出發送 SYNC_REC 的所有 ip 地址。
$ netstat -n -p | grep SYN_REC | awk '{print $5}' | awk -F: '{print $1}'

計算每一個 ip 在主機上建立的連線數量。
$ netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

列出從 TCP 或 UDP 連線到主機的 ip 的數量。
$ netstat -anp |grep 'tcp\|udp' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

列出每個 ip 建立的 ESTABLISHED 連線數量。
$ netstat -ntu | grep ESTAB | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr

列出每個 ip 建立的 port 80 連線數量。
$ netstat -plan|grep :80|awk {'print $5'}|cut -d: -f 1|sort|uniq -c|sort -nk 1


鳥哥的 Linux 私房菜 - 察看本機的網路連線與後門: netstat
使用 netstat 找出不正常的連線 | Tsung's Blog

沒有留言 :

張貼留言