在之前文章《我是如何使用wireshark軟體的》中介紹了wireshark的使用,提到了顯示過濾器和捕獲過濾器,重點介紹了顯示過濾器,本文將主要介紹一下捕獲過濾器,
這里再次說明一下兩者區別,需要看顯示過濾器的同學,請看文章《我是如何使用wireshark軟體的》,
-
捕獲過濾器:當進行資料包捕獲時,只有那些滿足給定的包含/排除運算式的資料包會被捕獲,
-
顯示過濾器:該過濾器根據指定的運算式用于在一個已捕獲的資料包集合中,隱藏不想顯示的資料包,或者只顯示那些需要的資料包,
01、簡介
首先了解下,為什么需要捕獲過濾器,舉個例子,在一臺服務器(TCPsever,埠5005)上,一個客戶端(其他家公司設備)運行幾天,就會突然掉線,這時候,說不清是服務器把客戶端踢下線,還是客戶端主動離線,
當然,這個時候在服務器添加日志記錄即可,就可以找“真兇”,如果是對方設備主動離線,對方又不配合時,對方“不相信你的日志”,這個時候,使用wireshark抓包,找出對方設備(TCPClient)先發出的FIN斷開連接的證據,然后“甩”他臉上即可,
其實上述場景,我在《我是如何使用wireshark軟體的》文中也提到過解決方案,使用顯示過濾加定時保存的策略,不過這樣在幾天的抓包中,會導致抓包檔案很大,而捕獲過濾則可以解決這個問題,
捕獲過濾使用方法
1.選擇捕獲->捕獲過濾器,然后編輯一個新的捕獲過濾器選項:名稱為“port5005”(名字根據自己的需求即可),過濾器為“port5005”,

?
2.在開始界面選擇網卡,然后點擊②處,選擇上一步新建的輸入捕獲條件即可,

?
3.開始捕獲
選擇完輸入捕獲條件,如下圖,直接雙擊網卡,就開始捕獲了,

?
02、BPF語法
捕獲過濾器應用于WinPcap,并使用BerkeleyPacketFilter(BPF)語法,這個語法被廣泛用于多種資料包嗅探軟體,主要因為大部分資料包嗅探軟體都依賴于使用BPF的libpcap/WinPcap庫,掌握BPF語法對你在資料包層級更深入地探索網路來說,非常關鍵,
使用BPF語法創建的過濾器被稱為運算式,并且運算式包含一個或多個原語,每個原語包含一個或多個限定詞,然后跟著一個ID名字或者數字,如:

?
BPF語法也是支持下列邏輯運算子的,從而創造更高級的運算式,
-
連接運算子 與 (&&)
-
選擇運算子 或 (||)
-
否定運算子 非 (!)
舉例說明:
src 192.168.0.10 && port 5005
上述運算式只對源地址是192.168.0.10和源埠或目標埠是5005的流量進行捕獲,
03、過濾示例
常用的過濾示例

?
注意靈活使用上文提到的邏輯運算子,
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/274333.html
標籤:其他
