# 添加主機路由
route add -host 192.168.1.10 dev eth0
# 添加網絡路由 (指定網關)
route add -net 10.0.0.0 netmask 255.0.0.0 gw 192.168.1.1
# 添加默認網關
route add default gw 192.168.1.1
# 刪除路由
route del -net 10.0.0.0 netmask 255.0.0.0
# 查看路由表
route -n
# -n 直接顯示 IP,不做 DNS 解析,速度快
輸出字段:Destination(目標網絡) Gateway(網關) Genmask(掩碼) Flags(標志: U=Up H=Host G=Gateway) Metric(度量) Ref(引用) Use(使用) Iface(接口)
# 所有監聽端口 (TCP/UDP)
netstat -tuln
# -t TCP, -u UDP, -l LISTEN, -n 數字顯示
# 所有已建立連接
netstat -tn
# 顯示本地/遠程地址、狀態 (ESTABLISHED/TIME_WAIT...)
# 統計協議數據
netstat -s
# IP/TCP/UDP/ICMP 收發包計數、錯誤計數
# 顯示進程信息 (需 root)
netstat -tulpn
# 顯示 PID/Program name,定位佔用端口進程
# 路由表 (同 route -n)
netstat -rn
# 接口統計
netstat -i
# RX/TX 包數、錯誤、丟包、衝突
# 抓取 80 端口 HTTP 流量
tcpdump -i eth0 -n port 80
# 抓取特定主機雙向流量
tcpdump -i eth0 -n host 192.168.1.100
# 抓取特定主機特定端口
tcpdump -i eth0 -n host 192.168.1.100 and port 3306
# 寫入文件分析 (Wireshark 打開)
tcpdump -i eth0 -n -s 0 -w mysql.pcap port 3306
# -s 0 抓取完整包
# 顯示序列號/標志位/窗口大小
tcpdump -i eth0 -n -S -v port 3306
| 現象 | 排查命令 | 關注點 |
|---|---|---|
| 連接超時 | netstat -tn | grep :3306 | SYN_SENT/SYN_RECV 堆積 → 防火牆/網絡不通 |
| 連接數暴增 | netstat -tn | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr | 單 IP 佔比 → 應用連接洩漏/攻擊 |
| 查詢延遲高 | tcpdump -i eth0 -n port 3306 -w slow.pcap | Wireshark 分析 RTT、重傳、空閒時間 |
| 主從同步斷開 | tcpdump -i eth0 -n host slave_ip and port 3306 | Binlog 傳輸中斷、ACK 超時 |
netstat 替代品,更快、信息更豐富 (ss -tuln)