Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> Linux 教學

tcpdump 抓包實戰指南:過濾表達式、常用選項、輸出解讀與 Wireshark 配合分析

編輯:Linux 教學

tcpdump 三大過濾維度

類型關鍵字範例
類型host, net, porthost 192.168.1.1, net 10.0.0.0/8, port 80
方向src, dstsrc host 1.2.3.4, dst port 443
協議tcp, udp, icmp, arp, ip, ethertcp port 22, udp port 53

邏輯運算:and / &&、or / ||、not / !。括號需轉義 \( ... \)。

常用選項

-i eth0          # 指定網卡
-n               # 直接顯示 IP/埠號,不做 DNS 反解(快)
-c 100           # 抓 100 個封包後退出
-w capture.pcap  # 寫入檔案(離線分析)
-r capture.pcap  # 讀取檔案
-s 0             # 擷取完整封包(預設 96/262144 bytes)
-v / -vv         # 詳細/更詳細輸出
-A               # ASCII 顯示荷載(適合 HTTP/SMTP 等文本協議)
-X               # 十六進制 + ASCII 顯示

實戰範例集

# 1. 抓 eth0 所有封包存檔
tcpdump -i eth0 -w /tmp/eth0.pcap -s 0

# 2. 抓特定主機雙向流量
tcpdump -i eth0 host 192.168.1.20 -w host.pcap

# 3. 抓該主機 ICMP
tcpdump -i eth0 host 192.168.1.20 and icmp

# 4. 排除特定埠(如 SSH 22、代理 8080)
tcpdump -i eth0 host 192.168.1.20 and not port 22 and not port 8080

# 5. 抓 VLAN 1 內 HTTP
tcpdump -i eth0 vlan 1 and port 80

# 6. 抓 PPPoE 撥號過程(含帳密明文風險)
tcpdump -i eth0 pppoes

# 7. 後台長期抓取 80 埠
nohup tcpdump -i eth0 port 80 -w /tmp/http.pcap -s 0 &

# 8. 僅看發往 80 埠的封包(dst port)
tcpdump -i eth0 host 1.2.3.4 and dst port 80

# 9. 僅看來自 80 埠的回應(src port)
tcpdump -i eth0 host 1.2.3.4 and src port 80

輸出欄位解讀(TCP 三次交手範例)

14:44:52.174122 IP 172.25.38.145.49563 > 172.25.34.88.7012: S 1986599379:1986599379(0) win 5840 
14:44:52.174249 IP 172.25.34.88.7012 > 172.25.38.145.49563: S 4294961892:4294961892(0) ack 1986599380 win 5792 
14:44:52.174228 IP 172.25.38.145.49563 > 172.25.34.88.7012: . ack 1 win 1460 
14:44:52.174433 IP 172.25.38.145.49563 > 172.25.34.88.7012: P 1:109(108) ack 1 win 1460 
...
  • S = SYN 發起連線
  • P = PSH 推送資料
  • F = FIN 關閉連線
  • . = ACK 確認(無資料)
  • R = RST 異常重置
  • win:滑動視窗大小(接收緩衝區)
  • mss:最大段長(通常 MTU-40)
  • seq:ack:序號/確認號

最佳實踐建議

  1. 生產環境務必加 -s 0 -w file.pcap,完整離線分析,避免終端輸出阻塞或遺漏。
  2. 使用 -n 關閉 DNS 反解,大幅降低抓包延遲。
  3. 過濾條件越精確越好,避免佔滿磁碟與記憶體。
  4. 敏感資料(帳密、Token)抓包後嚴格控管存取權限,分析完立即銷毀。
  5. 配合 Wireshark 圖形化分析:wireshark capture.pcap,支援流圖、重組、專家資訊等高級功能。
Copyright © Windows教程網 All Rights Reserved