
如何檢查 ubuntu 上特定連接埠的 netstats?例子
netstat -? grep: 80
但有一個轉折,所以它也能做到這一點
它應該只顯示不同的 IP 位址,但連接埠上任何重複的 IP 位址都應該分配在 IP 旁邊,然後按重複的數量排序
例子:
client IP: 80.230.90.120 Port: 80 Occured: 4 times
client IP: 70.122.30.25 Port: 80 Occured: 2 times
client IP: 60.78.70.230 Port: 80 Occured: 1 times
client IP: 40.42.90.220 Port: 80 Occured: 1 times
這可能嗎?提前致謝 :)
答案1
在目前狀態下,您不清楚本機電腦還是遠端電腦是「客戶端」。假設您正在尋找與遠端電腦上連接埠 80 的連接,以下內容應該可以滿足您的需求。只需port=port-number-to-search
在運行命令之前確保設定或將$port
命令中的內容替換為您要過濾的連接埠即可。
簡單的一行:
netstat -an | awk '{print $5}' | grep :$port | sort -n | uniq -c | sort -nr
輸出如下圖所示:
7 198.252.206.25:443 4 74.125.28.189:443 2 74.126.144.69:443 2 65.55.252.167:443 2 52.112.66.238:443
前面的數字是連接埠 80 上該 IP 的連線計數。
漂亮的印刷單行:
netstat -an | awk '{print $5}' | grep :$port | sort -n | uniq -c | sort -nr | tr ':' ' ' | awk '{printf "client IP: %-15s Port: %-5s Occurred: %s time(s)\n", $2, $3, $1}'
輸出如下圖所示:
客戶端 IP:198.252.206.25 連接埠:443 發生:9 次 客戶端 IP:74.126.144.69 連接埠:443 發生:2 次 客戶端 IP:74.125.28.189 連接埠:443 發生:2 次 客戶端 IP:34.210.168.7 連接埠:443 發生:2 次 客戶端 IP:216.58.217.195 連接埠:443 發生:2 次 客戶端 IP:192.0.73.2 連接埠:443 發生:2 次
編輯2017-06-26
最初我寫的命令是按 IP 排序的。 OP 說他/她對按頻率排序感興趣,所以我對此做了一些更改。您可能會注意到該sort
命令在該命令之前和之後使用uniq
。這不是一個錯誤。第一個sort
確保uniq
命令能夠執行其工作。第二種排序其實是依照頻率排序。