tcpdump過濾資料包,結果不對?
需要寫個程式通過
pcap-filter
表示式過濾資料包,測試時發現過濾結果不對!現將問題簡化如下(以tcpdump舉例)
問題描述
- 通過 tcpdump 過濾出173_20170107_180747_p5p2.pcap 檔案中IP為 10.10.88.173的資料包,並儲存為result.pcap,過濾命令
tcpdump -r 173_20170107_180747_p5p2.pcap -w result.pcap "host 10.10.88.173"
- 原始資料包用wireshark開啟,設定過濾表示式為
ip.addr==10.10.88.173
,發現IP為 10.10.88.173的資料包個數為7150
- 但用wireshark開啟tcpdump過濾出的result.pcap檔案,發現其資料包個數為
7152
,如下圖!(此時如果知道原因就不用往下看了)
問題分析
- 通過對比wireshark和tcpdump過濾出的資料包,發現tcpdump過濾出的pcap檔案,多了兩個ARP資料包。如圖
- 但就自己所瞭解的,ARP協議應屬於鏈路層的,不屬於IP網路層的(這種表述可能有爭論),為什麼tcpdump會將其包含在過濾結果內呢?
- 通過
man pcap-filter
查閱pcap-filter表示式語法,發現自己寫的tcpdump過濾表示式host 10.10.88.173
是正確的啊
- 但細看卻發現,預設下的
host
,src host
,dst host
過濾出的資料包,是包含ARP, RARP協議的!!!wireshark解析ARP資料包,其也包含對應的IP 10.10.88.173,man pcap-filter
,其準確描述如下
問題解決
- 將tcpdump過濾表示式修改為
ip host 10.10.88.173
,即執行命令tcpdump -r 173_20170107_180747_p5p2.pcap -w result.pcap "ip host 10.10.88.173"
即可!
問題總結
- 在使用tcpdump或其他工具過特定IP的資料包時,pcap-filter過濾表示式的書寫要注意!
- 如果僅僅是想過濾出IP層的特定IP的資料,需要使用
ip host X.X.X.X
或ip src X.X.X.X
或ip dst X.X.X.X
- 如果僅僅是想過濾出ARP或RARP協議的IP資料包時,需要使用
arp host X.X.X.X
或rarp host X.X.X.X
man pcap-filter
,多熟悉下
相關文章
- 用Tcpdump過濾資料包TCP
- Wireshark-過濾器-資料包解析過濾器
- JS 根據彙總結果過濾JS
- 使用iptables實現資料包過濾(轉)
- 使用tcpdump檢視原始資料包TCP
- 使用tcpdump+wireshark抓包分析網路資料包TCP
- 網路資料包分析工具tcpdump之一TCP
- 將Json載入到.NET物件並對結果進行過濾和排序JSON物件排序
- PHP 對資料進行驗證和過濾PHP
- mysql資料過濾MySql
- winshark 過濾包
- tcpdump抓包TCP
- [MYSQL -7]資料過濾MySql
- Linux中使用wireshark分析tcpdump抓取的資料包LinuxTCP
- wireshark過濾返回包特徵特徵
- 資料結果表概述
- ElasticSearch多層nested查詢、nested過濾排除非結果內容Elasticsearch
- ES查詢之查詢屬性過濾、結果高亮顯示
- [MYSQL-6] 過濾資料MySql
- 使用MySQL之過濾資料MySql
- 抓取Android平臺資料包之tcpdump 工具的使用過程中出現的問題AndroidTCP
- 分享一個瀏覽器外掛:搜尋引擎結果過濾器瀏覽器過濾器
- 利用Python爬蟲過濾“掘金”的關鍵詞檢索結果Python爬蟲
- Filter不過濾CSS和JSFilterCSSJS
- Mybatis結果對映MyBatis
- Lambda表示式where過濾資料
- MyBatis 結果對映總結MyBatis
- Wireshark抓包過濾器設定過濾器
- Vue過濾案例、按鍵修飾符、資料雙向繫結Vue
- tcpdump抓包分析詳解TCP
- tcpdump抓包命令詳解TCP
- 過濾搜尋引擎的抓取資料
- RangeBitmap提升Java流資料過濾效能Java
- OpenYurt 之 Yurthub 資料過濾框架解析框架
- 關於資料過濾的設計
- 使用SQL Server過濾資料的方法SQLServer
- 批次對比結果集
- 通過Vue的過濾器實現資料的資料脫敏Vue過濾器