(1)協議過濾
比較簡單,直接在抓包過濾框中直接輸入協議名即可。
tcp,只顯示TCP協議的數據包列表
http,只查看HTTP協議的數據包列表
icmp,只顯示ICMP協議的數據包列表
(2)IP過濾
host 192.168.1.104
src host 192.168.1.104
dst host 192.168.1.104
(3)端口過濾
port 80
src port 80
dst port 80
(4)邏輯運算符&& 與、|| 或、!非
src host 192.168.1.104 && dst port 80 抓取主機地址為192.168.1.80、目的端口為80的數據包
host 192.168.1.104 || host 192.168.1.102 抓取主機為192.168.1.104或者192.168.1.102的數據包
!broadcast 不抓取廣播數據包
2、顯示過濾器語法和實例
(1)比較操作符
比較操作符有== 等於、!= 不等於、> 大於、< 小於、>= 大於等於、<=小於等於。
(2)協議過濾
比較簡單,直接在Filter框中直接輸入協議名即可。注意:協議名稱需要輸入小寫。
tcp,只顯示TCP協議的數據包列表
http,只查看HTTP協議的數據包列表
icmp,只顯示ICMP協議的數據包列表

(3) ip過濾
ip.src ==192.168.1.104 顯示源地址為192.168.1.104的數據包列表
ip.dst==192.168.1.104, 顯示目標地址為192.168.1.104的數據包列表
ip.addr == 192.168.1.104 顯示源IP地址或目標IP地址為192.168.1.104的數據包列表

(4)端口過濾
tcp.port ==80, 顯示源主機或者目的主機端口為80的數據包列表。
tcp.srcport == 80, 只顯示TCP協議的源主機端口為80的數據包列表。
tcp.dstport == 80,只顯示TCP協議的目的主機端口為80的數據包列表。

(5) Http模式過濾
http.request.method=="GET", 只顯示HTTP GET方法的。
(6)邏輯運算符為 and/or/not
過濾多個條件組合時,使用and/or。比如獲取IP地址為192.168.1.104的ICMP數據包表達式為ip.addr == 192.168.1.104 and icmp

常見用顯示過濾需求及其對應表達式
數據鏈路層:
篩選mac地址為04:f9:38:ad:13:26的數據包----eth.src == 04:f9:38:ad:13:26
篩選源mac地址為04:f9:38:ad:13:26的數據包----eth.src == 04:f9:38:ad:13:26
網絡層:
篩選ip地址為192.168.1.1的數據包----ip.addr == 192.168.1.1
篩選192.168.1.0網段的數據---- ip contains "192.168.1"
篩選192.168.1.1和192.168.1.2之間的數據包----ip.addr == 192.168.1.1 && ip.addr == 192.168.1.2
篩選從192.168.1.1到192.168.1.2的數據包----ip.src == 192.168.1.1 && ip.dst == 192.168.1.2
傳輸層:
篩選tcp協議的數據包----tcp
篩選除tcp協議以外的數據包----!tcp
篩選端口為80的數據包----tcp.port == 80
篩選12345端口和80端口之間的數據包----tcp.port == 12345 && tcp.port == 80
篩選從12345端口到80端口的數據包----tcp.srcport == 12345 && tcp.dstport == 80
應用層:
特別說明----http中http.request表示請求頭中的第一行(如GET index.jsp HTTP/1.1),http.response表示響應頭中的第一行(如HTTP/1.1 200 OK),其他頭部都用http.header_name形式。
篩選url中包含.php的http數據包----http.request.uri contains ".php"
篩選內容包含username的http數據包----http contains "username"
摘自:
https://blog.csdn.net/qq_41082118/article/details/111287112
