pcap过滤法则.docx

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
pcap过滤法则

wpcap的过滤器是以已声明的谓词语法为基础的。过滤器是一个ASCII字符串,它包含了一个过滤表达式。pcap_compile()把这个表达式编译成内核级的包过滤器。这个表达式会选择那些数据包将会被堆存。如果表达式没有给出,那么,网络上所有的包都会被内核过滤引擎所认可。不然,只有那些表达式为true的包才会被认可。这个表达式包含了一个或多个原语。原语通常包含了id(名字或序列),这些id优先于限定词。以下是三种不同的限定词:输入(type)指明了哪些东西是id所代表的。可能的输入是host,net和port。比如:`host foo,`net 128.3,`port 20。如果没有输入限定词,就假定是host方向(dir)由id指明了一个特定的传输方向。可能的方向是src,dst,src or dst。比如,src foo,dst net 128.3,`src or dst port ftp-data。如果没有指定,就假定是src or dst。如果没有链路层(比如,像slip这样的点对点协议),那么限定词可以使用inbound和outbound,来指明一个方向。协议(proto)限定词限制了所匹配的协议。可能的协议有:ether,fddi,tr,ip,ip6,arp,rarp,decnet,tcp和udp。比如:`ether src foo,`arp net 128.3,`tcp port 21。如果没有指定协议限定词,那么就假定所有的协议都会被允许。例如:src foo等价于(ip or arp or rarp)src foo(当然,不能有不符合语法的字母出现),net bar等价于(ip or arp or rarp) net bar,port53等价于(tcp or udp) port 53。[ fddi通常是ether的别名;解析器会认为它们是在特定网络接口上的数据链路层。FDDI的首部包含了和以太网很相似的源地址和目的地址,并且通常也包含了和以太网很相似的数据包类型。所以,在FDDI网域上使用过滤器和在以太网上使用过滤器基本一致。FDDI的首部还包括了其他的数据,不过你不能在过滤器表达式内表示他们。同样的,tr也是ether的一个别名,它是较早被应用于FDDI的首部,也应用在令牌环网络首部。] 除了以上内容,还有一些特殊的限定词和上面的形式不太一样,它们是:gateway,broadcast,less,greater和一些算术表达式。这些内容会在下面和大家介绍。我们可以使用and,or和not将原语连接起来,来构造一个更复杂的过滤表达式。例如:`host foo and not port ftp and not port ftp-data。如果要简化输入,我们可以把已列出的id限定词省略。比如:`tcp dst port ftp or ftp-data or domain 和 `tcp dst port ftp or tcp dst port ftp-data or tcp dst port domain是完全等价的。可使用的原语有:dst host host当IPv4/v6数据包的目标域(destination field)为host时为true,host既可以是地址,也可以是名字。src host host当IPv4/v6数据包的源域(source field)为host时为true。host host当IPv4/v6数据包的源域(source field)或目标域(destination field)为host时为true。以上任何一个host表达式可以是ip,arp,rarp或ip6开头,如下所示:ip host host等价于:ether proto \ip and host host如果host是一个多IP地址,那么每一个地址都会被匹配。ether dst ehost当以太网的目的地址为ehost时为true。ehost可以是一个来自/etc/ether的名字,也可以是一个数字代号(参见ethers(3N)for numeric format)。ether src ehost当以太网的源地址为ehost时为true。ether host ehost当以太网的目的地址,或源地址为ehost时为true。gatewayhost当host为网关时为true。即,以太网源地址或目的地址是host,但源地址和目的地址不同时为host。host必须能被机器的主机-IP地址(host-name-to-IP-address)机制找到(如主机名文件,DNS,NIS等),也能被主机-以太网地址(host-name-to-Ethernet-address)机制找到(如/etc/ethers等)。例如:ether host e

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档