c++ winpcap开发(10)
生活随笔
收集整理的這篇文章主要介紹了
c++ winpcap开发(10)
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
過(guò)濾表達(dá)式語(yǔ)法
wpcap過(guò)濾器基于聲明性謂詞語(yǔ)法。過(guò)濾器是包含過(guò)濾表達(dá)式的ASCII字符串。
pcap_compile()接受表達(dá)式并將其轉(zhuǎn)換為內(nèi)核級(jí)包過(guò)濾器的程序。
DIR: 限定詞指定到和/或從id的特定傳輸方向???赡艿姆较蚴?src,?dst,?src或dst?和?src和?dst。例如`src foo',`dst net 128.3',`src或dst port ftp-data'。如果沒(méi)有dir限定符,?則假定為src或dst。對(duì)于“null”鏈路層(即點(diǎn)對(duì)點(diǎn)協(xié)議,如滑動(dòng)),?inbound?和 outbound?限定符可用于指定所需的方向。
proto:限定符將匹配限制為特定協(xié)議。可能的protos是:?ether,?fddi,?tr,?ip,?ip6,?arp,?rarp,?decnet,?tcp?和?udp。例如`ether src foo',`arp ??net 128.3',`tcp port 21'。如果沒(méi)有原始限定符,則假定與該類(lèi)型一致的所有協(xié)議。
pcap_compile()接受表達(dá)式并將其轉(zhuǎn)換為內(nèi)核級(jí)包過(guò)濾器的程序。
該表達(dá)式選擇要轉(zhuǎn)儲(chǔ)的數(shù)據(jù)包。如果沒(méi)有給出表達(dá)式,則網(wǎng)絡(luò)上的所有數(shù)據(jù)包將被內(nèi)核級(jí)過(guò)濾引擎接受。否則,只接受表達(dá)式為“true”的數(shù)據(jù)包。
該表達(dá)式由一個(gè)或多個(gè)?基元組成。?原語(yǔ)通常由?一個(gè)或多個(gè)限定符前面的id(名稱(chēng)或數(shù)字)組成?。
有三種不同的限定詞:
type: 限定詞表示id名稱(chēng)或數(shù)字是指什么樣的東西??赡艿念?lèi)型是?主機(jī),?網(wǎng)絡(luò)?和?端口。例如`host foo',`net 128.3','port 20'。如果沒(méi)有類(lèi)型限定符,?則假定主機(jī)。
DIR: 限定詞指定到和/或從id的特定傳輸方向???赡艿姆较蚴?src,?dst,?src或dst?和?src和?dst。例如`src foo',`dst net 128.3',`src或dst port ftp-data'。如果沒(méi)有dir限定符,?則假定為src或dst。對(duì)于“null”鏈路層(即點(diǎn)對(duì)點(diǎn)協(xié)議,如滑動(dòng)),?inbound?和 outbound?限定符可用于指定所需的方向。
proto:限定符將匹配限制為特定協(xié)議。可能的protos是:?ether,?fddi,?tr,?ip,?ip6,?arp,?rarp,?decnet,?tcp?和?udp。例如`ether src foo',`arp ??net 128.3',`tcp port 21'。如果沒(méi)有原始限定符,則假定與該類(lèi)型一致的所有協(xié)議。
更復(fù)雜的過(guò)濾器表達(dá)式使用的話(huà)建立 and,?or?and?not??來(lái)組合原語(yǔ)。
例如,`host foo and not port ftp and not port ftp-data。
總結(jié)
以上是生活随笔為你收集整理的c++ winpcap开发(10)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 16.如何做到webpack打包vue项
- 下一篇: C++11 并发指南七(C++11 内存