TCPDUMP 開源封包側錄神器,搞定Linux伺服器與工作站網路斷線點
處理 Linux 伺服器跟使用者日常工作站「明明有 Ping 通,服務卻連不上」的網路玄學問題時,但通常 Linux 主機沒裝圖行畫桌面的,這會讓新進技術人員面有難色,有時網路維護不用花俏介面,直接在 CLI 下指令抓封包,反而不會分心抽絲剝繭找真相…
TCPDUMP 技術重點拆解
純終端機環境下 TCPDUMP 有點像是網路「黑盒子飛行記錄器」,基於 libpcap 函式庫開發的高效能命令列封包分析工具。
支援多平台: 支援主流 Linux 發行版,如 Debian、Ubuntu、CentOS、Rocky、RHEL 與各類 Unix/BSD 系統,只需一行套件指令即可上線服用。
精準指令級封包過濾: 可用網路介面側錄(tcpdump -i eth0)、指定 IP 與主機(tcpdump host 192.168.1.50)、用通訊協定或Port過濾(tcpdump tcp port 80 or port 443),也可下組合條件快篩,透過 and、or、not 排除雜訊,找出工作站與伺服器之間的異常狀況。
可串接 Wireshark 輸出 .pcap 檔: 可搭配 -w capture.pcap 參數,可把即時封包存成標準二進位檔,把檔案拉回 Windows 或 Mac 工作站,丟進 Wireshark 用圖形化介面分析。
老黑應用場景分析
防火牆有沒有放行: 同事常反應「ERP 系統連不上」或「API 逾時」,但本機端防火牆設定看似正常,可在伺服器端下個指令 tcpdump -i any port <服務埠號>,抓出異常點位。
跨網段路由或 NAT 設定檢查: 稍微有點規模的公司會有跨 VLAN或走 VPN 會經過路由器連往資料庫伺服器時,一到遇到封包中途消失的情況,就要用到雙向同時側錄,比較好哪一個節點悄悄吞封包。
無圖形化桌面伺服器極速排錯: 正式工作的伺服器為了最大畫利用效能,基本上伺服器不會去裝桌面環境,TCPDUMP 資源佔用極低,能完成第一線的故障快篩的幫手。
這裡取得工具
GitHub 專案庫:https://github.com/the-tcpdump-group/

