TCPDump 可以將網路中傳送的資料包完全截獲下來提供分析,支持針對網路層、協議、主機、網路或埠的過濾,
- -a 嘗試將網路和廣播地址轉換成名稱,
- -c<資料包數目> tcpdump將在接受到count個資料包后退出,
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on ens33, link-type EN10MB (Ethernet), capture size 262144 bytes
00:02:01.018648 IP ubuntu.33417 > _gateway.domain: 3978+ [1au] A? sp1.baidu.com. (42)
00:02:01.019195 IP ubuntu.38973 > _gateway.domain: 28848+ [1au] AAAA? sp1.baidu.com. (42)
00:02:01.019313 IP ubuntu.36415 > _gateway.domain: 22020+ [1au] PTR? 2.113.168.192.in-addr.arpa. (55)
00:02:01.021463 IP _gateway.domain > ubuntu.36415: 22020 NXDomain 0/0/1 (55)
00:02:01.021621 IP ubuntu.36415 > _gateway.domain: 22020+ PTR? 2.113.168.192.in-addr.arpa. (44)
00:02:01.022083 IP _gateway.domain > ubuntu.33417: 3978 3/0/1 CNAME www.a.shifen.com., A 36.152.44.96, A 36.152.44.95 (101)
00:02:01.022657 IP ubuntu.60280 > 36.152.44.96.https: Flags [S], seq 4236676010, win 64240, options [mss 1460,sackOK,TS val 2233702947 ecr 0,nop,wscale 7], length 0
00:02:01.022949 IP _gateway.domain > ubuntu.36415: 22020 NXDomain 0/0/0 (44)
00:02:01.023494 IP ubuntu.41742 > _gateway.domain: 44210+ [1au] PTR? 128.113.168.192.in-addr.arpa. (57)
00:02:01.025131 IP _gateway.domain > ubuntu.41742: 44210 NXDomain 0/0/1 (57)
10 packets captured
19 packets received by filter
0 packets dropped by kernel
- -d 以容易閱讀的形式,在標準輸出上列印出編排過的包匹配碼, 隨后tcpdump停止,
- -dd 以C語言的形式列印出包匹配碼.
- -ddd 以十進制數的形式列印出包匹配碼(會在包匹配碼之前有一個附加的'count'前綴).
- -e 每行的列印輸出中將包括資料包的資料鏈路層頭部資訊
- -f 用數字顯示網際網路地址,
- -F<表達檔案> 顯示外部的 IPV4 地址時,采用數字方式而不是名字,
- -i<網路界面> 指定 tcpdump 需要監聽的介面,
對標準輸出進行行緩沖(nt: 使標準輸出設備遇到一個換行符就馬上把這行的內容列印出來).在需要同時觀察抓包列印以及保存抓包記錄的時候很有用. 比如, 可通過以下命令組合來達到此目的:``tcpdump -l | tee dat'' 或者 ``tcpdump -l > dat & tail -f dat''.(nt: 前者使用tee來把tcpdump 的輸出同時放到檔案dat和標準輸出中, 而后者通過重定向操作'>', 把tcpdump的輸出放到dat 檔案中, 同時通過tail把dat檔案中的內容放到標準輸出中)
-n 不把主機的網路地址轉換成名字,
-N 不列出域名,
-O 不啟用進行包匹配時所用的優化代碼,當懷疑某些 bug 是由優化代碼引起的,此選項將很有用,
-p 不讓網路界面進入混雜模式,
-q 快速輸出,僅列印少數的傳輸協議資訊,
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on ens33, link-type EN10MB (Ethernet), capture size 262144 bytes
00:13:59.942508 ARP, Request who-has _gateway tell 192.168.113.1, length 46
00:13:59.943247 IP ubuntu.49403 > _gateway.domain: UDP, length 55
00:13:59.944293 IP _gateway.domain > ubuntu.49403: UDP, length 55
00:13:59.944415 IP ubuntu.49403 > _gateway.domain: UDP, length 44
00:13:59.945881 IP _gateway.domain > ubuntu.49403: UDP, length 44
00:13:59.946588 IP ubuntu.44380 > _gateway.domain: UDP, length 55
00:13:59.947655 IP _gateway.domain > ubuntu.44380: UDP, length 55
00:13:59.947728 IP ubuntu.44380 > _gateway.domain: UDP, length 44
00:13:59.949170 IP _gateway.domain > ubuntu.44380: UDP, length 44
00:13:59.949813 IP ubuntu.53039 > _gateway.domain: UDP, length 57
10 packets captured
13 packets received by filter
0 packets dropped by kernel
-r<資料包檔案> 從指定的檔案讀取資料包資料,
-s<資料包大小> 設定每個資料包的大小,如果不設定默認將會是 68 位元組,
-S 列印 TCP 資料包的順序號時,使用絕對的順序號,而不是相對的順序號,
(注: 相對順序號可理解為, 相對第一個TCP 包順序號的差距,比如, 接受方收到第一個資料包的絕對順序號為232323, 對于后來接收到的第2個,第3個資料包, tcpdump會列印其序列號為1, 2分別表示與第一個資料包的差距為1 和 2. 而如果此時-S 選項被設定, 對于后來接收到的第2個, 第3個資料包會列印出其絕對順序號:232324, 232325).
-t 在每行輸出中不列印時間戳,
-tt 不對每行輸出的時間進行格式處理,
-ttt tcpdump 輸出時,每兩行列印之間會延遲一個段時間
-tttt 在每行列印的時間戳之前添加日期的列印
-T<資料包型別> 強制將表達方式所指定的資料包轉譯成設定的資料包型別,
-v 詳細顯示指令執行程序,
-vv 更詳細顯示指令執行程序,
-x 用十六進制字碼列出資料包資料,
-w<資料包檔案> 把資料包資料寫入指定的檔案,
公眾號:沒有夢想的阿巧 后臺回復 "群聊",一起學習,一起進步
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/157390.html
標籤:其他
