计算机网络,ethereal使用介绍

ethereal的抓包过滤器
  抓包过滤器用来抓取感兴趣的包,用在抓包过程中。抓包过滤器使用的是libcap 过滤器语言,在tcpdump 的手册中有详细的解释,基本结构是: [not] primitive [and|or [not] primitive ...]
个人观点,如果你想抓取某些特定的数据包时,可以有以下两种方法,你可以任选一种,个人比较偏好第二种方式:
  1、在抓包的时候,就先定义好抓包过滤器,这样结果就是只抓到你设定好的那些类型的数据包;
  2、先不管三七二十一,把本机收到或者发出的包一股脑的抓下来,然后使用下节介绍的显示过滤器,只让Ethereal 显示那些你想要的那些类型的数据包;
etheral的显示过滤器(重点内容)
  在抓包完成以后,显示过滤器可以用来找到你感兴趣的包,可以根据1)协议2)是否存在某个域3)域值4)域值之间的比较来查找你感兴趣的包。
  举个例子,如果你只想查看使用tcp 协议的包,在ethereal 窗口的左下角的Filter 中输入tcp,然后回车,ethereal 就会只显示tcp 协议的包。
  直接比较表达式可以使用下面的操作符来构造显示过滤器自然语言类c 表示举例eq == ip.addr==10.1.10.20 ne != ip.addr!=10.1.10.20 gt > frame.pkt_len>10 lt < frame.pkt_len<10 ge >= frame.pkt_len>=10 le <= frame.pkt_len<=10
  表达式组合可以使用下面的逻辑操作符将表达式组合起来自然语言类c 表示举例and && 逻辑与,比如ip.addr=10.1.10.20&&tcp.flag.fin or || 逻辑或,比如ip.addr=10.1.10.20||ip.addr=10.1.10.21 xor ^^ 异或,如tr.dst[0:3] == 0.6.29 xor tr.src[0:3] == not ! 逻辑非,如 !llc
例如:
我想抓取IP 地址是192.168.2.10 的主机,它所接收收或发送的所有的HTTP 报文,那么合适的显示Filter (过滤器)就是:ip.addr==192.168.2.10 and http
在ethereal 使用协议插件
ethereal 能够支持许多协议,但有些协议需要安装插件以后才能解,比如H.323,以H.323 协议为例,首先下载ethereal 的H.323 插件,下载地址 [url]http://www.voice2sniff.org/[/url] 下载完了以后将文件(h323.dll) 解压到ethereal 安装目录的plugin\0.9.x 目录下面,比如我的是0.9.11 ,然后,需要进行一下设置1)启动ethereal 2)菜单Edit->Preference 3)单击Protocols 前面的"+"号,展开Protocols 4)找到Q931 ,并单击5)确保"Desegment.... TCP segments" 是选中的(即方框被按下去)6)单击TCP 7)确保"Allow....TCP streams" 是选中的8)确保没有选中"Check....TCP checksum" 和"Use....sequence numbers" 9)单击TPKT 10)确保"Desegment....TCP segments" 是选中的11)点击Save,然后点击Apply ,然后点击OK 你也完全可以不断地重新安装新版本winpcap 和ethreal,这样就可以不需在旧的ethreal 的版本中安装新的插件来支持新的协议插件。这也是懒人的一种做法。

你可能感兴趣的:(职场,休闲,ethereal,抓包过滤器)