Linux
netstat 持續刷新(觀察改變輸出)
我正在使用這個簡單的命令來監視我的 Debian 伺服器上的連接(以處理最近的一些 DoS 攻擊):
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
我如何連續執行它?所以它會每分鐘刷新一次(當然也可以是任何給定的時間)。我試過手錶:
watch -n 30 "netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n"
但是它將輸出從帶有連接數的漂亮列表更改為如下所示:
1 tcp 0 10015 [LOCAL IP] ... 1 Proto Recv-Q Send-Q Local Address Foreign Address State 1 Active Internet connections (w/o servers)
所以沒有顯示外部IP。有什麼我錯過的嗎?
這是原始輸出的樣子:
2 [IP ADDRESS] 4 [IP ADDRESS] 4 [IP ADDRESS] 4 [IP ADDRESS] 7 [IP ADDRESS] 16 [IP ADDRESS] 71 [IP ADDRESS]
當我說
[LOCAL IP]
我的意思是我的機器的IP。當我用它執行它時,
-c
它會凍結。
netstat -c
如果我沒有誤解您的問題,可能會對您有所幫助。-c 代表–連續。
編輯:你去:
watch -n 30 "netstat -ntu | awk '{print \$5}' | cut -d: -f1 | sort | uniq -c | sort -n"
我在 $ 之前添加了一個 \。
搜尋 macos 的命令到此結束。對於那些想要查看程序實時連接的 mac 使用者:
nettop -p 60683
您還可以限制介面類型,如 wifi 或有線…
nettop -t wifi -n -p 60683