Linux 系統的 netstat 命令是查看網絡連接、路由表和接口狀態的實用工具。它并非直接用于精確統計網絡流量,但結合其他命令可以實現流量監控。以下方法利用 netstat 獲取部分網絡信息:
1. 查看網絡接口信息:
使用 -i 選項查看所有網絡接口的統計信息,包括接收和發送的數據包數量:
netstat -i
要查看特定接口(例如 eth0)的信息,可以使用 grep 命令過濾結果:
netstat -i | grep eth0
請注意: netstat -i 提供的數據包數量,并非直接的流量大小(字節數)。 要獲得更精確的流量信息,建議使用 ifconfig 或 ip 命令。
2. 查看 TCP 連接:
使用 -n 和 -t 選項查看所有活動的 TCP 連接及其狀態:
netstat -nt
要查看特定端口(例如 80 端口)的連接數量,同樣使用 grep 命令:
netstat -nt | grep :80
3. 查看 udp 連接:
使用 -n 和 -u 選項查看所有活動的 UDP 連接:
netstat -un
類似地,查看特定端口(例如 123 端口)的連接數量:
netstat -un | grep :123
4. 查看路由表:
使用 -r 選項查看路由表信息:
netstat -r
查看特定路由(例如 192.168.1.0/24)的信息:
netstat -r | grep '192.168.1.0/24'
重要提示: netstat 在許多現代 Linux 發行版中已被 ss 命令取代,ss 命令提供更全面的網絡信息,并且性能更好。 建議使用 ss 命令代替 netstat 進行網絡監控。 netstat 的安裝方法因發行版而異,例如在 Debian/Ubuntu 系統中,可以使用 sudo apt-get install net-tools 安裝。
為了更精確地監控網絡流量,建議使用 ifstat、vnstat 或 tcpdump 等工具。 這些工具能夠提供更詳細的流量統計信息,例如每秒的流量速率等。