導航:首頁 > 程序命令 > tcpdump抓包命令

tcpdump抓包命令

發布時間:2024-05-06 08:54:08

A. linux 基礎教程 29-tcpmp命令-1

    在Linux中輸入命令man tcpmp給出的定義如下所示:

是不是感覺很懵?我們用通俗、形象、學術的表達方式來全方位描述tcpmp:

常用選項如下所示:

1、第一個抓包示例

-i : 指定用來抓包的網路介面,這個參數在伺服器有多個網卡的時候非常有效
-nn : 不轉換協議和埠號,當tcpmp遇到協議號或埠號,不需要將這些數字轉換為對應的協議名稱或埠名稱,如22埠SSH埠,我們希望顯示22,而非SSH
-X : 將協議頭和包內容原原本本的顯示出來,tcpmp會同時以16進制和ASCII的形式進行顯示,在協議分析時非常好用。
'port 22' : 告訴tcpmp要有選擇的顯示所抓到的包,在該示例中,只顯示源埠或目的埠是22的數據包,其他的數據包則不顯示。
-c : 用來指定抓包的個數,示例設置的個數為1,則代表僅抓取一個包之後就退出不再抓包了。

2、-e 增加數據鏈路層的頭部信息

    通過兩個命令的輸出對比,可以看到增加-e選項後,輸出的結果中增加MAC地址信息。而且在輸出內容中會有 oui Unknown ,OUI即Organizationally unique identifier(組織唯一標識符),在任何一塊網卡中燒錄的6位元組MAC地址中,前3個位元組體現了OUI,其表明了網卡的製造組織,通常情況下,該標識符是唯一的。在本例中,由於沒有識別出網卡的製造商,因此顯示為Unknown。

3、-l 將輸出變為行緩沖模式

    -l的作用是將tcpmp的輸出行為變為 行緩沖 方式,這樣可以保證tcpmp遇到換行符,就立即將緩沖的內容輸出到標准輸出(stdout),方便利用管道或重定向方式進行後續處理,而不會造成延遲。
    在Linux的標准I/O中提供了 全緩沖 行緩沖 無緩沖 三種緩沖方式。標准錯誤是不帶緩沖的,而終端設備常為行緩沖,其他默認則為全緩沖。

    在該例中,將tcpmp輸出的內容通過管道提取第5列,可以用來查看詳細的連接信息。而如果不加 -l 選項時,則只有當緩沖區全部占滿時,tcpmp才會將緩沖區中的內容輸出,這樣就有可能導致輸出不連續的,如果強行結束,則會影響下一行的完整性。

4、-t 輸出不加時間戳

    在增加選項 -t 選項後,時間23:48:03.193526就消失了。tcpmp默認情況下是按微秒來計時,因此最一個時間精確到了第6位。

5、 -v 顯示詳細信息

    在增加 -v 選項後,會在輸出的內容中增加 tos ttl id offset 協議編號 總長度 等,如需要理解這些信息,就需要了解TCP/IP協議中的頭的具體定義了。

6、-F 指定過濾表達式所在的文件
    在第一個示例中,命令行增加了 'port 22' ,而這一項就叫 過濾條件 ,如果設置了過濾條件,則tcpmp只抓取滿足過濾條件的數據包。如需要設置較為復雜的過濾條件或復用過濾條件時,這時可以將過濾條件保存為文件,然後通過-F載入該過濾文件。

7、 -w 將原始數據包信息保存到文件中

    當我們查看保存的文件時,出現的是亂碼。則代表無法直接查看,很有可能是二進制文件。那麼怎麼查看保存的文件了?請看下一個示例。

7、 -r 從文件中讀取原始數據包

    通過-w和-r選項即可實現抓包的錄制回放功能。

B. Linux下如何抓指定IP的包

用tcpm命令可以抓指定IP的包,具體命令為:

tcpmp tcp -i eth1 -t -s 0 -c 100 and dst port 22 and src net 192.168.1.1 -w ./target.cap

參數解析:

tcp: ip icmp arp rarp 和 tcp、udp、icmp這些選項等都要放到第一個參數的位置,用來過濾數據報的類型。

-i eth1 : 只抓經過介面eth1的包

-t : 不顯示時間戳

-s 0 : 抓取數據包時默認抓取長度為68位元組。加上-S 0 後可以抓到完整的數據包

-c 100 : 只抓取100個數據包

dst port 22 : 抓取目標埠是22的數據包

src net 192.168.1.0/24 : 數據包的源網路地址為192.168.1.1

-w ./target.cap : 保存成cap文件,方便用ethereal(即wireshark)分析

(2)tcpmp抓包命令擴展閱讀

tcpmp語法格式:

tcpmp [-adeflnNOpqStvx][-c<數據包數目>][-dd][-ddd][-F<表達文件>][-i<網路界面>][-r<數據包文件>][-s<數據包大小>][-tt][-T<數據包類型>][-vv][-w<數據包文件>][輸出數據欄位]

tcpmp主要參數說明:

1、-a 嘗試將網路和廣播地址轉換成名稱。

2、-c<數據包數目> 收到指定的數據包數目後,就停止進行傾倒操作。

3、-d 把編譯過的數據包編碼轉換成可閱讀的格式,並傾倒到標准輸出。

4、-dd 把編譯過的數據包編碼轉換成C語言的格式,並傾倒到標准輸出。

5、-ddd 把編譯過的數據包編碼轉換成十進制數字的格式,並傾倒到標准輸出。

6、-e 在每列傾倒資料上顯示連接層級的文件頭。

7、-f 用數字顯示網際網路地址。

8、-F<表達文件> 指定內含表達方式的文件。

9、-i<網路界面> 使用指定的網路截面送出數據包。

10、-l 使用標准輸出列的緩沖區。

11、-n 不把主機的網路地址轉換成名字。

12、-N 不列出域名。

C. tcpmp抓包命令

1、tcpmp:默認啟動。普通情況下,直接啟動tcpmp將監視第一個網路介面上所有流過的數據包。

2、tcpmp -i eth1:監視指定網路介面的數據包,如果不指定網卡,默認tcpmp只會監視第一個網路介面,一般是eth0,下面的例子都沒有指定網路介面。

3、tcpmp host sundown:監視指定主機的數據包。列印所有進入或離開sundown的數據包。

4、tcpmp -i eth0 src host hostname:截獲主機hostname發送的所有數據。

5、tcpmp -i eth0 dst host hostname:監視所有送到主機hostname的數據包。

6、tcpmp tcp port 23 and host 210.27.48.1:如果想要獲取主機210.27.48.1接收或發出的telnet包。

7、tcpmp udp port 123:對本機的udp 123埠進行監視123為ntp的服務埠。

D. TCPDUMP 抓包 怎麼查看 抓的包的內容

1、tcpmp檢測登錄linux系統輸入tcpmp,如果找不到表示沒有安裝。也可以用rpm查詢。

E. 鎯崇湅鍒拌繛鎺ョ殑SYN\SRT\FIN\ACK絳夊寘錛岀敤tcpmp錛屽懡浠ゆ槸鎬庢牱鐨

榛樿ゆ儏鍐典笅tcpmp灝嗕竴鐩存姄鍖咃紝鐩村埌鎸変笅鈥漜trl+c鈥濅腑姝錛屼嬌鐢-c閫夐」鎴戜滑鍙浠ユ寚瀹氭姄鍖呯殑鏁伴噺錛

bash浠g爜
slot10_suse10sp2:/tmp/lx # tcpmp -c 2 -i eth0
tcpmp: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes

10:58:05.656104 IP 10.71.171.140.ssh > 10.70.121.92.autodesk-lm: P 1210443473:1210443589(116) ack2583117929 win 12864
10:58:05.657074 IP 10.70.121.92.autodesk-lm > 10.71.171.140.ssh: . ack 116 win 65211

2 packets captured
6 packets received by filter
0 packets dropped by kernel

浠ヤ笂渚嬪瓙涓錛屽彧閽堝筫th0緗戝彛鎶2涓鍖呫

F. 在linux命令行環境下如何抓取網路數據包

  眾所周知,在Windows下開發運行環境下,在調試網路環境時,可以可以很方便的藉助wireshark等軟體進行抓包分析;並且在linux或者Ubuntu等桌面版里也可以進行安裝抓包工具進行抓包分析,但總有一些情況,無法直接運用工具(比如一些沒有界面的linux環境系統中),則此時我們就需要使用到最簡單的tcpmp命令進行網路抓包。

  一般的,linux下抓包時,抓取特定的網路數據包到當前文件夾下的文件中,再把文件拷貝出來利用Windows下的wireshark軟體進行分析。

tcpmp命令詳解:(簡單舉例)

  1、抓取到的文件為filename.cap,然後將此文件拷貝到Windows下,使用wireshar打開後,即可對此文件進行分析。
  2、eth0 是主機的網路適配器名稱,具體的參數值可以在linux命令行窗口中通過 ifconfig 指令查詢。

閱讀全文

與tcpdump抓包命令相關的資料

熱點內容
怎麼用c語言編譯簡單的小游戲 瀏覽:812
伺服器如何以域用戶登錄 瀏覽:602
安卓os14怎麼默認桌面 瀏覽:549
應用市場下載在哪個文件夾 瀏覽:895
安卓上的谷歌地圖怎麼用 瀏覽:183
安卓命令行打包 瀏覽:516
編程文字與數字教學視頻 瀏覽:817
如何看手機號碼注冊哪些app 瀏覽:413
linux查看總內存 瀏覽:852
python進程間共享 瀏覽:438
js如何獲取本地伺服器地址 瀏覽:70
gfx什麼時候支持安卓十一系統 瀏覽:941
壓縮機90兆帕 瀏覽:930
程序員調侃語句 瀏覽:581
不是php函數的是 瀏覽:1001
壓縮文件好處 瀏覽:785
3d266期神童三膽計演算法 瀏覽:189
通過愛思助手怎麼下載app 瀏覽:323
vi命令將文件創在桌面上 瀏覽:925
程序員做競價 瀏覽:698