在網(wǎng)絡(luò)中,我們通常不需要捕獲所有的數(shù)據(jù)包,我們經(jīng)常只需要捕獲到我們想要的數(shù)據(jù)包就可以了,如:我們只需要捕獲tcp包或者arp包等。
成都創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比枝江網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式枝江網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋枝江地區(qū)。費(fèi)用合理售后完善,10年實(shí)體公司更值得信賴。
當(dāng)我們只需要捕獲tcp包時,在選擇網(wǎng)絡(luò)連接(網(wǎng)卡)之后,先不要選擇start,而是選擇option,然后再彈出窗口中的capture filter欄中輸入tcp即可,這樣我們wireshark就只會捕獲tcp類型的數(shù)據(jù)包了。
你也可以使用wireshark內(nèi)置的過濾規(guī)則來限制捕獲數(shù)據(jù)包,只需要點(diǎn)擊capture filter,然后再彈出的窗口中,選擇相應(yīng)的規(guī)則即可。我們也可以自己創(chuàng)建新的規(guī)則到內(nèi)置規(guī)則中,這樣下次我們還需要進(jìn)行類似的操作時就不用再手動書寫規(guī)則,而直接可以在內(nèi)置規(guī)則中選擇即可。
選擇或書寫好規(guī)則后,只需要單擊start按鈕即可對相應(yīng)的數(shù)據(jù)包進(jìn)行捕獲。
捕獲過濾規(guī)則采用BPF語法,所以要靈活使用過濾器,則掌握BPF語法是關(guān)鍵。使用BPF語法創(chuàng)建的過濾器被稱為表達(dá)式,并且每個表達(dá)式包含一個或多個原語,每個原語包含一個或多個限定詞,然后后面再跟著一個ID名字或者數(shù)字,如:dst host 192.168.1.1 && tcp port 80。
這個例子的意思是捕獲發(fā)往目標(biāo)主機(jī)ip地址為192.168.1.1的80端口的tcp流量數(shù)據(jù)包。
dst、host、tcp和port是限定詞,192.168.1.1和80是ID,&&是操作符,&&之前部分是為一個原語,即:dst host 192.168.1.1,&&之后部分為另一個原語,即:tcp port 80。
限定詞包括:
限定詞 | 說明 | 例子 |
Type | 指出名字或數(shù)字所代表的意義 | host、net、port |
Dir | 指明傳輸方向是前往還是來自名字或數(shù)字 | src、dst |
Proto | 限定所要匹配的協(xié)議 | ether、ip、tcp、udp、http、ftp、icmp等 |
我們還可以對協(xié)議域進(jìn)行捕獲過濾,如表達(dá)式icmp[0]==8 || icmp[0]==0表示我們只捕獲echo請求(類型8)和echo回復(fù)(類型0)的icmp數(shù)據(jù)包。
常用捕獲過濾器:
過濾器 | 說明 |
tcp[13]&32==32 | 設(shè)置了 URG 位的 TCP 數(shù)據(jù)包 |
tcp[13]&16==16 | 設(shè)置了 ACK 位的 TCP 數(shù)據(jù)包 |
tcp[13]&8==8 | 設(shè)置了 PSH 位的 TCP 數(shù)據(jù)包 |
tcp[13]&4==4 | 設(shè)置了 RST 位的 TCP 數(shù)據(jù)包 |
tcp[13]&2==2 | 設(shè)置了 SYN 位的 TCP 數(shù)據(jù)包 |
tcp[13]&1==1 | 設(shè)置了 FIN 位的 TCP 數(shù)據(jù)包 |
tcp[13]==18 | TCP SYN-ACK 數(shù)據(jù)包 |
ether host 00:00:00:00:00:00(MAC地址) | 流入或流出該 MAC 地址的流量 |
!ether host 00:00:00:00:00:00(MAC地址) | 不流入或流出該 MAC 地址的流量 |
broadcast | 僅廣播流量 |
icmp | ICMP 流量 |
tcmp[0:2]==0x0301 | ICMP 目標(biāo)不可達(dá)、主機(jī)不可達(dá) |
ip | 僅 IPv4 流量 |
ip6 | 僅 IPv6 流量 |
udp | 僅 UDP 流量 |