<kbd id="5sdj3"></kbd>
<th id="5sdj3"></th>

  • <dd id="5sdj3"><form id="5sdj3"></form></dd>
    <td id="5sdj3"><form id="5sdj3"><big id="5sdj3"></big></form></td><del id="5sdj3"></del>

  • <dd id="5sdj3"></dd>
    <dfn id="5sdj3"></dfn>
  • <th id="5sdj3"></th>
    <tfoot id="5sdj3"><menuitem id="5sdj3"></menuitem></tfoot>

  • <td id="5sdj3"><form id="5sdj3"><menu id="5sdj3"></menu></form></td>
  • <kbd id="5sdj3"><form id="5sdj3"></form></kbd>

    Linux 抓包命令,你會用嗎?

    共 2223字,需瀏覽 5分鐘

     ·

    2021-08-29 04:16

    點(diǎn)擊關(guān)注公眾號,Java干貨及時送達(dá)

    tcpdump是一個功能強(qiáng)大的命令行數(shù)據(jù)包分析器,它是通過監(jiān)聽服務(wù)器的網(wǎng)卡來獲取數(shù)據(jù)包,所有通過網(wǎng)絡(luò)訪問的數(shù)據(jù)包都能獲取到。它也提供了過濾器的功能,可以獲取指定的網(wǎng)絡(luò)、端口或協(xié)議的數(shù)據(jù)包

    程序員日常排查問題,最常用的是使用過濾器功能獲取指定端口的數(shù)據(jù)包,用來分析服務(wù)器是否收到請求、請求數(shù)據(jù)是否完整。

    參數(shù)介紹

    tcpdump命令的參數(shù)很多,詳見如下:

    這里只介紹一些常用的參數(shù)

    -c count

    count表示數(shù)量。抓取數(shù)據(jù)包的數(shù)量達(dá)到count后結(jié)束命令,如果不使用-c 參數(shù),會不停的抓取數(shù)據(jù)包,直到手動停止

    -C file_size

    抓取數(shù)據(jù)包保存到文件時,通過該命令指定文件的大小。文件達(dá)到指定大小后,會創(chuàng)建一個在原文件名稱后面加上序號的新文件,如:dump.txt,dump.txt1。file_size的單位是b

    -D

    列出服務(wù)器所有網(wǎng)卡。tcpdump默認(rèn)監(jiān)聽的是編號最小的那個網(wǎng)卡,一般是eth0。在進(jìn)行抓包時可以通過 -i 參數(shù)指定監(jiān)聽的網(wǎng)卡,any表示監(jiān)聽所有網(wǎng)卡

    -i interface

    指定監(jiān)聽的網(wǎng)卡名稱,any表示監(jiān)聽所有的網(wǎng)卡

    -n

    輸出結(jié)果中,不把ip轉(zhuǎn)換成主機(jī)名(默認(rèn)顯示的是主機(jī)名)

    -q

    快速輸出,只輸出簡要的數(shù)據(jù)包信息

    -r file

    從文件中獲取數(shù)據(jù)包,不再從網(wǎng)絡(luò)獲取數(shù)據(jù)包

    -t

    不輸出時間戳

    -w file

    將抓取的數(shù)據(jù)包保存到文件,-r 參數(shù)可以從文件中讀取數(shù)據(jù)包

    -W filecount

    指定文件的數(shù)量,當(dāng)文件滾動到指定數(shù)量后會從第一個文件開始覆蓋

    除了以上參數(shù),還有一些關(guān)鍵字可以用來進(jìn)行條件過濾,常用關(guān)鍵字如下

    -host

    過濾主機(jī),如 tcpdump host 192.168.1.110 只抓取經(jīng)過這個ip的數(shù)據(jù)包

    -src

    用來過濾請求來源方的參數(shù),如:tcpdump src host 192.168.1.110 只抓取從這個ip過來的數(shù)據(jù)包

    -dst

    用來過濾請求接收方的參數(shù),如:tcpdump dst host 192.168.1.110 只抓取發(fā)送到這個ip的數(shù)據(jù)包

    -port

    過濾端口,如:tcpdump port 8080 只抓取經(jīng)過8080端口的數(shù)據(jù)包

    -net

    過濾網(wǎng)絡(luò),如:tcpdump net 192.168  只抓取經(jīng)過這個網(wǎng)段的數(shù)據(jù)包

    -and、not、or

    條件過濾,和字面意思一樣。如:tcpdump net 192.168 and port 8080 抓取經(jīng)過192.168網(wǎng)段并經(jīng)過8080端口的數(shù)據(jù)包

    數(shù)據(jù)包分析

    抓取的數(shù)據(jù)包格式如下

    20:17:43.496528

    時間戳,時:分:秒.微秒

    IP

    網(wǎng)際網(wǎng)絡(luò)協(xié)議的名稱

    180.101.49.12.http > iZbp14w0b2rs7i1400bjjmZ.42468180.101.49.12.http

    請求發(fā)送方的ip和端口 > 請求接收方的ip和端口。端口有時會顯示為某個網(wǎng)絡(luò)協(xié)議,如http、ssh、mysql等

    Flags [R]

    flag標(biāo)識和狀態(tài),可選的狀態(tài)有:[S.] [.] [P.] [F.][R]

    seq、ack、fin

    表示tcp協(xié)議的3次握手和4次揮手的過程。seq表示請求的序列號,ack是回答的序列號,fin表示完成。這里顯示的序列號是相對值,-S參數(shù)可以顯示絕對值

    win

    表示當(dāng)前窗口的可用大小

    length

    表示報文體的長度,從長度可以簡單分析是否正確接收了請求

    通過以上結(jié)果只能做簡單的分析,可以使用-w參數(shù)把數(shù)據(jù)包寫入文件,文件中記錄的數(shù)據(jù)包比命令行要詳細(xì)的多。借助分析工具可以對文件進(jìn)一步分析,這里推薦使用Wireshark,這個工具是開源的,開箱即用使用簡單,這里不做詳細(xì)介紹了

    常用的命令組合

    抓取8080端口的數(shù)據(jù)包

    tcpdump -i any port 8080 

    抓取從192.168.1.110發(fā)送到192.168.1.111的數(shù)據(jù)包

    tcpdump -i any src host 192.168.1.110 and dst host 192.168.1.111

    抓取192.168網(wǎng)段除了192.168.1.110的請求的數(shù)據(jù)包

    tcpdump -i any src net 192.168 and 'src host not 192.168.1.110'

    抓取8080端口的數(shù)據(jù)包并寫入dump.log文件中

    tcpdump -i any port 8080 -w dump.log

    注意事項(xiàng)

    1.tcpdump需要用管理員權(quán)限運(yùn)行,可以用sudo命令或者root用戶

    2.抓取的數(shù)據(jù)包通過length字段只能做一些簡單的判斷,想要詳細(xì)分析,需要借助數(shù)據(jù)包分析工具,如:Wireshark






    關(guān)注Java技術(shù)??锤喔韶?/strong>



    獲取 Spring Boot 實(shí)戰(zhàn)筆記!
    瀏覽 71
    點(diǎn)贊
    評論
    收藏
    分享

    手機(jī)掃一掃分享

    分享
    舉報
    評論
    圖片
    表情
    推薦
    點(diǎn)贊
    評論
    收藏
    分享

    手機(jī)掃一掃分享

    分享
    舉報

    <kbd id="5sdj3"></kbd>
    <th id="5sdj3"></th>

  • <dd id="5sdj3"><form id="5sdj3"></form></dd>
    <td id="5sdj3"><form id="5sdj3"><big id="5sdj3"></big></form></td><del id="5sdj3"></del>

  • <dd id="5sdj3"></dd>
    <dfn id="5sdj3"></dfn>
  • <th id="5sdj3"></th>
    <tfoot id="5sdj3"><menuitem id="5sdj3"></menuitem></tfoot>

  • <td id="5sdj3"><form id="5sdj3"><menu id="5sdj3"></menu></form></td>
  • <kbd id="5sdj3"><form id="5sdj3"></form></kbd>
    亚洲 a v 网站 | 小早川怜子一区二区三区 | 91成长视频蘑菇视频在线观看 | 九九九九精美视频 | 在线免费观看黄色电影 |