教你用 tcpdump 即場捉包:五分鐘搵出邊部機扯爆你條網絡

教你用 tcpdump 即場捉包:五分鐘搵出邊部機扯爆你條網絡 做 IT 嘅你,一定遇過呢種情況:老細問「點解個網咁慢?」、同事話「個 file server 成日 timeout」,但你又唔知係邊部機出事。與其慢慢估,不如直接拎把 tcpdump 出嚟,睇下個網絡真係發生咩事。 今次就教你用 tcpdump 即場捉包,五分鐘內搵出邊部機扯爆你條網絡。 tcpdump 係咩?點解要識用 tcpdu...

教你用 tcpdump 即場捉包:五分鐘搵出邊部機扯爆你條網絡

做 IT 嘅你,一定遇過呢種情況:老細問「點解個網咁慢?」、同事話「個 file server 成日 timeout」,但你又唔知係邊部機出事。與其慢慢估,不如直接拎把 tcpdump 出嚟,睇下個網絡真係發生咩事。

今次就教你用 tcpdump 即場捉包,五分鐘內搵出邊部機扯爆你條網絡。

tcpdump 係咩?點解要識用

tcpdump 係 Linux 上最常用嘅封包擷取工具,佢可以即時睇到流經你部機張網卡嘅所有 network traffic。無論係查網絡問題、分析攻擊、定係 debug 應用程式,tcpdump 都係 IT 人必備嘅技能。

最重要係:佢唔使裝 GUI,直接喺 terminal 行就得,SSH 入去部 server 即刻用到。

基本用法:先睇下張卡收緊咩

首先,睇下你有邊幾張網卡:

ip link show

或者舊式

ifconfig -a

然後直接行 tcpdump 睇下流量(記住要 root 權限):

sudo tcpdump -i eth0

咁樣會即時噴一大堆資料出嚟,快到你睇唔切。所以一開始我哋要識得加 filter。

搵出邊部機扯爆網絡:搵「流量大戶」

最直接嘅方法,就係睇下邊個 IP 產生最多 connection。用呢個 command,淨係睇 SYN 包(即係建立連線嘅第一個包):

sudo tcpdump -i eth0 -n 'tcp[tcpflags] & (tcp-syn) != 0'

但咁樣仲係好多。想統計邊個 IP 最多連線,可以用 `-c` 限數量,再 pipe 去統計:

sudo tcpdump -i eth0 -n -c 10000 'tcp[tcpflags] & (tcp-syn) != 0' 2>/dev/null \
  | awk '{print $3}' \
  | cut -d. -f1-4 \
  | sort | uniq -c | sort -rn | head -20

呢個 command 會捉 10000 個 SYN 包,統計每個來源 IP 出現幾多次,然後排最頭嗰 20 個。通常排第一嗰部機,就係扯爆你網絡嘅元兇——可能係中咗毒、跑緊 P2P,或者有隻壞咗嘅 device 不斷重連。

睇清楚佢喺度做緊咩

搵到可疑 IP(假設係 192.168.1.100),跟住睇佢同邊度通訊:

sudo tcpdump -i eth0 -n host 192.168.1.100

想再縮窄,只睇佢去邊個 port:

sudo tcpdump -i eth0 -n 'src host 192.168.1.100 and port 443'

如果見到佢不斷連去一堆奇怪嘅外部 IP、或者 port 掃描式咁試,咁就九成係中咗惡意程式。

進階:直接儲起做分析

即場睇始終有限,最專業嘅做法係儲低個 pcap 檔,之後慢慢用 Wireshark 分析:

sudo tcpdump -i eth0 -w /tmp/capture.pcap -c 50000

之後可以將個 file 抄返落自己電腦,用 Wireshark 開,睇 statistics 就知道邊部機流量最大。

如果淨係想捉某一部機,加個 host filter:

sudo tcpdump -i eth0 -w /tmp/suspect.pcap host 192.168.1.100

幾個救命嘅 filter

記住呢幾個 filter,日常查嘢夠用:

# 只睇某個 port
sudo tcpdump -i eth0 port 80

只睇某部機

sudo tcpdump -i eth0 host 192.168.1.100

唔睇 SSH(驚捉到自己)

sudo tcpdump -i eth0 not port 22

只睇 ICMP(ping)

sudo tcpdump -i eth0 icmp

總結

tcpdump 係查網絡問題嘅第一把刀。學識基本 filter,再加埋個統計技巧,你已經可以喺五分鐘內搵出扯爆網絡嘅元兇。下次老細再問「個網咁慢」,你直接捉包俾佢睇,即刻專業晒。

🔗 參考資料:NVD NIST 漏洞資料庫

記住一個重點:捉包嘅第一步永遠係縮窄範圍,用 host、port、protocol filter 收窄到你想睇嘅嘢,先唔會被海量資料淹沒。

#server #SSH #Linux #技術分享 #network

教你用 tcpdump 即場捉包:五分鐘搵出邊部機扯爆你條網絡 - 文章重點速覽 infographic