tcpdump 使用介紹

2021-10-07 12:59:19 字數 3320 閱讀 4695

tcpdump 是一款強大的網路抓包工具,執行在 linux 平台上。熟悉 tcpdump 的使用能夠幫助你分析、除錯網路資料。

-n  表示不要解析網域名稱,直接顯示 ip。

-nn** 不要解析網域名稱和埠。

-x 同時用 hex 和 ascii 顯示報文的內容。

-xx 同 -x,但同時顯示乙太網頭部。

-s 顯示絕對的序列號(sequence number),而不是相對編號。

-i 監聽的網絡卡。

-v, -vv, -vvv 顯示更多的詳細資訊。

-c number 擷取 number 個報文,然後結束。

-a 只使用 ascii 列印報文的全部資料,不要和 -x 一起使用。

-d 列出所有可以監控的網絡卡。

-s 指定每條報文的最大位元組數,預設為262144,如果值為0時,表示不截斷,抓取完整的資料報

機器上的網路報文數量異常的多,很多時候我們只關係和具體問題有關的資料報(比如訪問某個**的資料,或者 icmp 超時的報文等等),而這些資料只佔到很小的一部分。把所有的資料擷取下來,從裡面找到想要的資訊無疑是一件很費時費力的工作。而 tcpdump 提供了靈活的語法可以精確地擷取關心的資料報,簡化分析的工作量。這些選擇資料報的語句就是過濾器(filter)!

過濾器也可以簡單地分為三類:type, dir 和 proto。

type 讓你區分報文的型別,主要由 host(主機), net(網路) 和 port(埠) 組成。src(源位址) 和 dst(目的位址) 也可以用來過濾報文的源位址和目的位址。

過濾的真正強大之處在於你可以隨意組合它們,而連線它們的邏輯就是常用的 與/and/&& 、 或/or/|| 和 非/not/!。

1.監聽所有埠,直接顯示 ip 位址

tcpdump -ns

2.顯示更詳細的資料報文,包括 tos, ttl, checksum 等

tcpdump -nnvvs

3.顯示資料報的全部資料資訊,用 hex 和 ascii 兩列對比輸出

tcpdump -nnvvxs

4.監控乙個指定的網路介面

tcpdump -i eth0

5.基於ip查詢流量

tcpdump host 114.114.114.114

6.根據**和目標進行篩選

tcpdump src 1.1.1.1 (源位址)

tcpdump dst 1.0.0.1 (目的位址)

tcpdump not src 1.1.1.1 (過濾源位址)

tcpdump not dst 1.0.0.1 (過濾目的位址)

7.檢視某一網段或者子網的進出流量

tcpdump net 1.2.3.0/24

8.使用十六進製制輸出

tcpdump -c 1 -x icmp

9.顯示特定埠的流量

tcpdump port 3389

tcpdump src port 1025

tcpdump dst port 1026

10.顯示特定協議的流量

tcpdump icmp

tcpdump udp

tcpdump tcp

11.檢視某一範圍內的所有埠的流量

tcpdump portrange 21-23

12.將包存在檔案中

tcpdump port 80 -w capture_file

13.從檔案中讀取

tcpdump -r capture_file

14.來自特定的ip,發往特定的埠

tcpdump -nnvvs src 139.5.6.4 and dst port 3389

15.從某個網段來,到某個網段去

tcpdump -nvx src net 192.168.0.0/16 and dst net 10.0.0.0/8 or 172.16.0.0/16

16.到某個ip的非icmp流量

tcpdump dst 192.168.0.2 and src net and not icmp

tcpdump -vv src mars and not dst port 22

17.get請求

tcpdump -vvals0 | grep 'get'

tcpdump -s 0 -a 'tcp dst port 80 and tcp[((tcp[12:1] & 0xf0) >> 2):4] = 0x47455420'

18.post請求

10:35:26.790594 ip 192.168.1.1.domain > chenlvzhoudembp.52148: 8596 nxdomain 0/1/0 (106)

第一列:時分秒毫秒

第二列:網路協議

第三列:傳送方的ip位址+埠號(或者協議)

第四列:>

第五列:接收方的ip位址+埠號(或者協議)

第六列:冒號

第七列:flag識別符號:

[s]:建立連線的標識syn

[p]:傳送資料的標識

[f]:結束連線的標識fin

[.]:沒有標識

tcpdump 使用介紹

tcpdump 工具簡介 tcpdump 工具簡介1 定義 用簡單的話來定義 tcpdump 就是 dump the traffic on a network 根據使用者的定義對網路上的資料報進行截獲的包分析工具 2 功能 它支援針對網路層 協議 主機 網路或埠的過濾,並提供 and or not等...

全面介紹Linux下tcpdump的使用

本文將介紹tcpdump的大部分選項及其表示式的具體用法 tcpdump是linux上的網路抓包工具,可以監視所有經過網絡卡的流量包。tcpdump的命令格式為tcpdump options expression,通過表示式可以過濾流量。直接啟動tcpdump將監視第乙個網路介面上所有流過的資料報。...

tcpdump抓包命令介紹

tcpdump抓包命令 tcpdump vv s 0 i eth0 port 3306 w 123 a.txt tcpdump nnr a.txt more tcpdump是乙個用於擷取網路分組,並輸出分組內容的工具。tcpdump憑藉強大的功能和靈活的擷取策略,使其成為類unix系統下用於網路分析...