Tcpdump一些常用指令

1、tcpdump安裝:yum install tcpdump

2、關鍵字介紹

類型關鍵字:

  指定主機  host 192.168.1.111

  指定網絡地址  net 202.0.0.0

  指定端口  port 8080

方向關鍵字

  src:src 192.168.1.111,ip包源地址是192.168.1.111

  dst:det 192.168.1.112,ip包目標地址是192.168.1.112

  src or dst

  src and dst

協議關鍵字

  fddi、tcp、udp、rarp、arp、http等

其他關鍵字  

  gateway(抓取指定網關的數據包)、broadcast、less、greater(非運算 'not ' '! ', 與運算'and','&&';或運算 'or' ,'||';)

3、混雜模式

  混雜模式就是接收所有經過網卡的數據包,包括不是發給本機的包。默認情況下網卡只把發給本機的包(包括廣播包)傳遞給上層程序,其它的包一律丟棄。簡單的講,混雜模式就是指網卡能接受所有通過它的數據流,不管是什麼格式,什麼地址的。事實上,計算機收到數據包後,由網絡層進行判斷,確定是遞交上層(傳輸層),還是丟棄,還是遞交下層(數據鏈路層、MAC子層)轉發

  查看當前網卡是否爲混雜模式:#Ifconfig eth0

  開啓: # ifconfig eth0 promisc

  關閉: # ifconfig eth0 -promisc

4、相關選項:

-c:指定要抓取的包數量。

-i interface:指定tcpdump需要監聽的接口。

-n:對地址以數字方式顯式,否則顯式爲主機名,也就是說-n選項不做主機名解析。

-C:用於判斷用 -w 選項將報文寫入文件的大小是否超過這個值,超過了就新建文件(文件名後綴是1、2、3依次增加)。

-p:不讓網絡界面進入混雜模式。

-f:將外部的Internet地址以數字的形式打印出來。

-nn:除了-n的作用外,還把端口顯示爲數值,否則顯示端口服務名。

-N:不打印出host的域名部分。例如tcpdump將會打印'nic'而不是'nic.ddn.mil'。

-P:指定要抓取的包是流入還是流出的包。可以給定的值爲"in"、"out"和"inout",默認爲"inout"。

-e:輸出的每行中都將包括數據鏈路層頭部信息,例如源MAC和目標MAC。

-q:快速打印輸出。即打印很少的協議相關信息,從而輸出行都比較簡短。

-X:輸出包的頭部數據,會以16進制和ASCII兩種方式同時輸出。

-XX:輸出包的頭部數據,會以16進制和ASCII兩種方式同時輸出,更詳細。

-vvv:當分析和打印的時候,產生詳細的輸出。

-D:列出可用於抓包的接口。將會列出接口的數值編號和接口名,它們都可以用於"-i"後。

-w:將抓包數據輸出到文件中。可以同時配合"-G time"選項使得輸出文件每time秒就自動切換到另一個文件。可通過"-r"選項載入這些文件以進行分析和打印。

-s:指定要監聽數據包的長度

-tttt:加入時間戳

5、實例:

  1、tcpdump -i ens33  -c 100 -vvv -tttt -s 0 -w 1.cap host 192.168.1.111 and tcp port 8080

  抓取從ens33網口出去源地址爲192.168.1.111,端口爲8080的tcp協議的100個包,具有詳細信息、時間戳、不限長度寫入1.cap文件

  2、tcpdump -i eth33 src host 192.168.1.111 and dst port 8080

  抓取從ens33流向源地址爲192.168.1.111的包以及接收8080端口的包

6、wireshark界面

 7、封包協議

  Frame:物理層的數據幀概況。

  EthernetII:數據鏈路層以太網幀頭部信息。

  InternetProtocol Version 4:互聯網層IP包頭部信息。

  TransmissionControl Protocol:傳輸層的數據段頭部信息。

  HypertextTransfer Protocol:應用層的信息。

8、響應詳細數據

9、http字段簡介

  Host:主機地址
  Connection:是否需要持久連
  Content-Length:HTTP消息實體的傳輸長度
  Cache-Control:指定請求和響應遵循的緩存機制
  Accept:指定客戶端能夠接收的內容類型,內容類型中的先後次序表示客戶端接收的先後次序
  Origin:最初請求是從哪裏發起的( origin只用於Post請求)
  User-Agent:告訴服務器,Browser內核
  Content-Type:表示具體請求中的媒體類型信息
  Referer:讓服務器判斷來源頁面, 即用戶是從哪個頁面來的
  Accept-Encoding:指定瀏覽器可以支持的web服務器返回內容壓縮編碼類型
  Accept-Language:指定HTTP客戶端瀏覽器用來展示返回信息所優先選擇的語言。

使用 tcpdump監聽某一端口數據

備註:監聽某一端口的數據

tcpdump -i eth1 -nnn udp port 21001

-i 表示指定網卡
-nnn 指定通信協議
port 指定端口號

可以不指定網卡參數

 

 

 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章