對付 tcpdump 的利用,大部門打點員會分成兩類。有一類打點員,他們熟知 tcpdump 和個中的所有標志;另一類打點員,他們僅相識根基的利用要領,剩下工作都要借助參考手冊才氣完成。呈現這種環境的原因在于, tcpdump 是一個相當高級的呼吁,利用的時候需要對網絡的事情機制有相當深入的相識。
在本日的文章中,我想提供一個快速但相當實用的 tcpdump 參考。我交涉到根基的和一些高級的利用要領。我敢必定我會忽略一些相當酷的呼吁,接待你增補在評論部門。
在我們深入相識以前,最重要的是相識 tcpdump 是用來做什么的。 tcpdump 呼吁用來生存和記錄網絡流量。你可以用它來調查網絡上產生了什么,并可用來辦理各類百般的問題,包羅和網絡通信無關的問題。除了網絡問題,我常常用 tcpdump 辦理應用措施的問題。假如你發明兩個應用措施之間無法很功德情,可以用 tcpdump 調查出了什么問題。 tcpdump 可以用來抓取和讀取數據包,出格是當通信沒有被加密的時候。
基本常識
相識 tcpdump ,首先要知道 tcpdump中利用的標志(flag)。在這個章節中,我會涵蓋到許多根基的標志,這些標志在許多場所下會被用到。
不轉換主機名、端標語等
凡是環境下, tcpdump 會實驗查找和轉換主機名和端標語。
# tcpdump
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
16:15:05.051896 IP blog.ssh > 10.0.3.1.32855: Flags [P.], seq 2546456553:2546456749, ack 1824683693, win 355, options [nop,nop,TS val 620879437 ecr 620879348], length 196
# tcpdump tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes 16:15:05.051896 IP blog.ssh > 10.0.3.1.32855: Flags [P.], seq 2546456553:2546456749, ack 1824683693, win 355, options [nop,nop,TS val 620879437 ecr 620879348], length 196 |
你可以通過 -n 標志封鎖這個成果。我小我私家老是利用這個標志,因為我喜歡利用 IP 地點而不是主機名,主機名和端標語的轉換常常會帶來困擾。可是,知道操作 tcpdump 轉換可能不轉換的成果照舊相當有用的,出格是有些時候,知道源流量(source traffic)來自哪個處事器是相當重要的。
# tcpdump -n
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
16:23:47.934665 IP 10.0.3.246.22 > 10.0.3.1.32855: Flags [P.], seq 2546457621:2546457817, ack 1824684201, win 355, options [nop,nop,TS val 621010158 ecr 621010055], length 196
# tcpdump -n tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes 16:23:47.934665 IP 10.0.3.246.22 > 10.0.3.1.32855: Flags [P.], seq 2546457621:2546457817, ack 1824684201, win 355, options [nop,nop,TS val 621010158 ecr 621010055], length 196 |
增加具體信息
增加一個簡樸 -v 標志,輸出會包括更多信息,譬喻一個 IP 包的保留時間(ttl, time to live)、長度和其他的選項。
# tcpdump
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
16:15:05.051896 IP blog.ssh > 10.0.3.1.32855: Flags [P.], seq 2546456553:2546456749, ack 1824683693, win 355, options [nop,nop,TS val 620879437 ecr 620879348], length 196
# tcpdump tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes 夢飛科技 - 全球數據中心基礎服務領先供應商 |