一个基本单元通常是下面中的一个 [src|dst] host
此基本单元允许你过滤主机ip地址或名称。你可以优先指定src|dst关键词来指定你关注的是源地址还是目标地址。如果未指定,则指定的地址出现在源地址或目标地址中的包会被抓取。 ether [src|dst] host
此单元允许你过滤主机以太网地址。你可以优先指定关键词src|dst在关键词ether和host之间,来确定你关注的是源地址还是目标地址。如果未指定,同上。 gateway host
过滤通过指定host作为网关的包。这就是指那些以太网源地址或目标地址是host,但源ip地址和目标ip地址都不是host的包
[src|dst] net
通过网络号进行过滤。你可以选择优先指定src|dst来确定你感兴趣的是源网络还是目标网络。如果两个都没指定。指定网络出现在源还是目标网络的都会被选择。另外,你可以选择子网掩码或者CIDR(无类别域形式)。 [tcp|udp] [src|dst] port 过滤tcp,udp及端口号。可以使用src|dst和tcp|udp关键词来确定来自源还是目标,tcp协议还是udp协议。tcp|udp必须出现在src|dst之前。 less|greater 选择长度符合要求的包。(大于等于或小于等于) ip|ether proto 选择有指定的协议在以太网层或是ip层的包 ether|ip broadcast|multicast 选择以太网/ip层的广播或多播 创建一个复杂过滤表达式,来选择包的字节或字节范围符合要求的包。请参考http://www.tcpdump.org/tcpdump_man.html 4.8.1. 自动过滤远程通信 如果Wireshark是使用远程连接的主机运行的(例如使用SSH,X11 Window输出,终端服务器),远程连接必须通过网络传输,会在你真正感兴趣的通信中产生大量数据包(通常也是不重要的) 想要避免这种情况,wireshark可以设置为如果发现有远程连接(通过察看指定的环境变量),自动创建一个过滤器来匹配这种连接。以避免捕捉Wireshark捕捉远程连接通信。 下列环境变量可以进行分析 SSH——CONNECTION(ssh) [remote name]: 4.9. 在捕捉过程中 捕捉时,会出现下面的对话框 36 图 4.3. 捕捉信息对话框 上述对话框会向你显示捕捉到包的数目,捕捉持续时间。选择的被统计的协议无法更改(什么鸟意思?) 提示 这个对话框可以被隐藏,在前次的捕捉选项对话框设置\即可。 4.9.1. 停止捕捉 运行中的捕捉线程可以用下列方法停止: 1. 使用捕捉信息对话框上的\ 注意 捕捉信息对话框有可能被隐藏,如果你选择了\ stop\按钮停止。 2. 使用菜单项\3. 使用工具栏项\ Stop\ Stop\ 4. 使用快捷键:Ctrl+E 5. 如果设置了触发停止的条件,捕捉达到条件时会自动停止。 4.9.2. 重新启动捕捉 运行中的捕捉进程可以被重新启动。这将会移出上次捕捉的所有包。如果你捕捉到一些你不感兴趣的包,你不想保留它,这个功能十分有用。 重新启动是一项方便的功能,类似于停止捕捉后,在很短的时间内立即开始捕捉。以下两种方式可以实现重新启动捕捉: 1. 使用菜单项\2. 使用工具栏项\ [12] Restart\ Restart\ 记得在Windows安装那一节层提到如果作为服务启动可以避免非管理员无法进行捕捉,不知道二者能否相互印证。 [13] 网卡在局域网内会接到很多不属于自己的包,默认情况下,网卡会不对这些包进行处理。貌似设置为杂收模式,Wireshak会监听所有的包,但并不作出相应。 37 [14] 粗略查了一下,未找到该词的合适翻译,多见于Winpcap的描述,如果把该单词拆分,snap:单元,快照,len:长度,似乎就是单位长度,单元大小的意思。在看看该段下面第二个如果中提到的snapshot length,snaplen应该是二者的简写形式,快照长度 38 第 5 章 文件输入/输出及打印 5.1. 说明 本章将介绍捕捉数据的输入输出。 打开/导入多种格式的捕捉文件 ? 保存/导出多种格式的捕捉文件 ? 合并捕捉文件 ? 打印包 ? 5.2. 打开捕捉文件 Wireshark可以读取以前保存的文件。想读取这些文件,只需选择菜单或工具栏的:“File/将会 弹出打开文件对话框。详见第 5.2.1 节 “打开捕捉文件对话框” 如果使用拖放功能会更方便 要打开文件,只需要从文件管理器拖动你想要打开的文件到你的Wireshark主窗口。但拖放功能不是在所有平 台都支持。 在你载入新文件时,如果你没有保存当前文件,Wireshark会提示你是否保存,以避免数据丢失。(你可以在首选项禁止提示保存) 除Wireshark原生的格式(libpcap 格式,同样被 tcpdump/Windump和 其他基于libpcap/WinPcap使用)外,Wireshark可以很好地读取许多捕捉文件格式。支持的格式列表见第 5.2.2 节 “输入文件格式” Open”。Wireshark 5.2.1. 打开捕捉文件对话框 打开文件对话框可以用来查找先前保存的文件。表 5.1 “特定环境下的打开文件对话框”显示了一些Wireshark打开文件对话框的例子。 对话框的显示方式取决于你的操作系统 对话框的显示方式取决于操作系统,以及GTK+工具集的版本。但不管怎么说,基本功能都是一样的。 常见对话框行为: 选择文件和目录 ? 点击Open/OK按钮,选择你需要的文件并打开它 ? 点击Cancle按钮返回Wireshark主窗口而不载入任何文件。 ? Wireshark对话框标准操作扩展 如果选中文件,可以查看文件预览信息(例如文件大小,包个数。。。) ? 通过\按钮、显示字段指定显示过滤器。过滤器将会在打开文件后应用。在输入过滤字符时会进行语法检查。如果输入正确背景色为绿色,如果错误或输入未结束,背景色为绿色。点击filter按钮会打开过滤对话框,用于辅助输入显示过滤表达式。(详见第 6.3 节 “浏览时过滤包”) ? XXXX-we need a better description of these read filters(貌似说这一段需要更多的做介绍) ? 通过点击复选框指定那些地址解析会被执行。详见第 7.6 节 “名称解析” 在大文件中节约大量时间 你可以在打开文件后修改显示过滤器,和名称解析设置。但在一些巨大的文件中进行这些操作将会占用 大量的时间。在这种情况下建议在打开文件之前就进行相关过滤,解析设置。 表 5.1. 特定环境下的打开文件对话框 Microsoft Windows(GTK2 installed) 图 5.1. Windows下的打开对话框 此对话框一般都带有一些wireshark扩展 39 此对话框的说明: 如果可用,\按钮将会打开本节的用户手册。 ? \按钮 在当前版本的windows下不可用(我看了一下,的确不可用,但过滤输入框还是可用的) ? 错误提示功能:如果Wireshark无法识别选中的捕捉文件,Open按钮将为灰色不可用[a] ? 图 5.2. 新版GtK下的打开对话框 Unix/Linux:GTK version >= 2.4 这是在Gimp/GNOME桌面环境下的打开文件对话框 对此对话框的说明。 “+”按钮可以将右侧选中的目录添加到收藏夹。成为预设目录。 ? \按钮可以移除左侧目录列表中选中的目录。(\不可以移除) ? 如果Wireshark不能识别选中的捕捉文件,\按钮将是灰色不可用。 ? 图 5.3. 旧版GTK下的打开对话框 Unix/Linux: GTK version < 2.4 / Microsoft Windows (GTK1 installed) gimp/gnome桌面环境,或windows gtk1下的的。 该对话框说明 ? 如果未能识别不做文件,Open按钮将为灰色不可用 [a] 我测试了一下,无论什么文件,Wireshark都会去尝试打开,更遑论错误检查 5.2.2. 输入文件格式 可以打开的捕捉文件格式列表: ? ? ? ? ? ? ? ? ? libpcap, tcpdump and various other tools using tcpdump's capture format Sun snoop and atmsnoop Shomiti/Finisar Surveyor captures Novell LANalyzer captures Microsoft Network Monitor captures AIX's iptrace captures Cinco Networks NetXray captures Network Associates Windows-based Sniffer and Sniffer Pro captures Network General/Network Associates DOS-based Sniffer (compressed or uncompressed) captures 40