linux tcpdump命令詳解

2021-06-09 04:57:38 字數 1630 閱讀 3677

tcpdump,就是:dump the traffic on a network,根據使用者的定義對網路上的資料報進行截獲的包分析工具。 tcpdump可以將網路中傳送的資料報的「頭」完全截獲下來提供分析。它支援針對網路層、協議、主機、網路或埠的過濾,並提供and、or、not等邏輯語句來幫助你去掉無用的資訊。

選項介紹:

-a    將網路位址和廣播位址轉變成名字;

-d    將匹配資訊包的**以人們能夠理解的彙編格式給出;

-dd    將匹配資訊包的**以c語言程式段的格式給出;

-ddd   將匹配資訊包的**以十進位制的形式給出;

-e    在輸出行列印出資料鏈路層的頭部資訊;

-f    將外部的internet位址以數字的形式列印出來;

-l    使標準輸出變為緩衝行形式;

-n    不把網路位址轉換成名字;

-t    在輸出的每一行不列印時間戳;

-v    輸出乙個稍微詳細的資訊,例如在ip包中可以包括ttl和服務型別的資訊;

-vv    輸出詳細的報文資訊;

-c    在收到指定的包的數目後,tcpdump就會停止;

-f    從指定的檔案中讀取表示式,忽略其它的表示式;

-i    指定監聽的網路介面;

-r    從指定的檔案中讀取包(這些包一般通過-w選項產生);

-w    直接將包寫入檔案中,並不分析和列印出來;

-t    將監聽到的包直接解釋為指定的型別的報文,常見的型別有rpc (遠端過程

呼叫)和snmp(簡單網路管理協議)

1、啟動:

tcpdump

缺省會監控eth0流過的資料報,也就是第乙個網路介面

2、監控指定網路介面的資料報

tcpdump -i eth1

3、指定主機的資料報

tcpdump host dev211

4、指定ip的資料報

tcpdump host 192.168.0.99

tcpdump host 192.168.0.99 and \(192.168.0.98 or 192.168.0.97\)

5、擷取主機傳送的資料

tcpdump -i eth0 src host hostname

6、監控主機收到的資料

tcpdump -i eth0 dst host hostname

7、監控主機和埠的資料報

tcpdump tcp port 23 host 192.168.0.211

tcpdump udp port 123 

8、抓取http包

tcpdump  -xvvennss 0 -i eth0 tcp[20:2]=0x4745 or tcp[20:2]=0x4854

例項:tcpdump -i eth0 -tnn dst port 80 -c 1000 | awk -f"." '' | sort | uniq -c | sort -nr |head -n 10  

/usr/sbin/tcpdump -i eth0 -s 0 -l -w - dst port 3306 | strings | egrep -i 'select|update|delete|insert|set|commit|rollback|create|drop|alter|call'

Linux tcpdump命令詳解

1 命令 tcpdump 2 命令引數 a 將網路位址和廣播位址轉變成名字 d 將匹配資訊包的 以人們能夠理解的彙編格式給出 dd 將匹配資訊包的 以c語言程式段的格式給出 ddd 將匹配資訊包的 以十進位制的形式給出 e 在輸出行列印出資料鏈路層的頭部資訊 f 將外部的internet位址以數字的...

Linux tcpdump命令詳解

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

Linux tcpdump 命令使用詳解

在日常工作中,我們總是能遇上各種各樣奇怪的網路問題,比如我這台機器怎麼 ping 不通了,我的 ssh 怎麼又連不上了,這個控制台怎麼又訪問不了了等等各種網路問題,當然有時候可以通過 ping telnet arp 這些命令和工具來排查和解決,但這些都比不上去抓個包來得實在,也就是下面要分享的 tc...