1、网络协议分析软件Wireshark简要说明要点分组嗅探器的结构要深入理解网络协议,需要仔细观察协议实体之间交换的报文序列。为探究协议操作细节,可使协议实体执行某些动作,观察这些动作及其影响。这些任务可以在仿真环境下或在如因特网这样的真实网络环境中完成。观察在正在运行协议实体间交换报文的基本工具被称为分组嗅探器(packet sniffer)。顾名思义,一个分组嗅探器俘获(嗅探)计算机发送和接收的报文。一般情况下,分组嗅探器将存储和显示出被俘获报文的各协议头部字段的内容。图1为一个分组嗅探器的结构。图1右边是计算机上正常运行的协议(在这里是因特网协议)和应用程序(如:web浏览器和ftp客户端)
2、。分组嗅探器(虚线框中的部分)是附加计算机普通软件上的,主要有两部分组成。分组俘获库(packet capture library)接收计算机发送和接收的每一个链路层帧的拷贝。高层协议(如:HTTP、UDP、DNS、IP等)交换的报文都被封装在链路层帧中,并沿着物理媒体(如以太网的电缆)传输。图1假设所使用的物理媒体是以太网,上层协议的报文最终封装在以太网帧中。 分组嗅探器的第二个组成部分是分析器。分析器用来显示协议报文所有字段的内容。为此,分析器必须能够理解协议所交换的所有报文的结构。例如:我们要显示图1中HTTP协议所交换的报文的各个字段。分组分析器理解以太网帧格式,能够识别包含在帧中的I
3、P数据报。分组分析器也要理解IP数据报的格式,并能从IP数据报中提取出TCP报文段。然后,它需要理解TCP报文段,并能够从中提取出HTTP消息。最后,它需要理解HTTP消息。 Wireshark (Ethereal)是一种可以运行在Windows, UNIX, Linux等操作系统上的分组分析器。Wireshark (Ethereal)是免费的,可以从得到。网络协议分析软件 Wireshark 与 Ethereal 的关系Wireshark(原名Ethereal)是目前世界上最受欢迎的协议分析软件,利用它可将捕获到的各种各样协议的网络二进制数据流翻译为人们容易读懂和理解的文字和图表等形式,极大
4、地方便了对网络活动的监测分析和教学实验。它有十分丰富和强大的统计分析功能,可在Windows,Linux 和UNIX等系统上运行。此软件于1998年由美国Gerald Combs首创研发,原名Ethereal,至今世界各国已有100多位网络专家和软件人员正在共同参与此软件的升级完善和维护。它的名称于2006年5月由原Ethereal改为Wireshark。至今它的更新升级速度大约每23个月推出一个新的版本,2007年9月时的版本号为0.99.6。但是升级后软件的主要功能和使用方法保持不变。它是一个开源代码的免费软件,任何人都可自由下载,也可参与共同开发。Wireshark网络协议分析软件可以十
5、分方便直观地应用于计算机网络原理和网络安全的教学实验,网络的日常安全监测,网络性能参数测试,网络恶意代码的捕获分析,网络用户的行为监测,黑客活动的追踪等。因此它在世界范围的网络管理专家,信息安全专家,软件和硬件开发人员中,以及美国的一些知名大学的网络原理和信息安全技术的教学、科研和实验工作中得到广泛的应用。在安装新旧版本软件包和使用中,Ethereal与Wireshark的一些细微区别如下: (1)Ethereal软件安装包中包含的网络数据采集软件是winpcap 3.0的版本,保存捕获数据时只能用英文的文件名,文件名默认后缀为 .cap (2)Wireshark软件安装包中,目前包含的网络数
6、据采集软件是winpcap 4.0版本,保存捕获数据时可以用中文的文件名,文件名默认后缀为 .pcap。另外,Wireshark可以翻译解释更多的网络通信协议数据,对网络数据流具有更好的统计分析功能,在网络安全教学和日常网络监管工作中使用更方便,而基本使用方法仍然与Ethereal相同。说明:为了帮助大家轻松掌握Wireshark十分强大的网络原理实验、网络数据分析统计和图表功能,现将Wireshark主操作界面上的菜单译为中英对照,供参考。 Wireshark 主界面的操作菜单File打开文件 Open 打开文件 Open Recent 打开近期访问过的文件 Merge 将几个文件合并为一个
7、文件 Close 关闭此文件 Save As 保存为 文件属性 Export 文件输出 Print 打印输出 Quit 关闭Edit编辑 Find Packet搜索数据包 Find Next 搜索下一个 Find Previous 搜索前一个 Mark Packet (toggle) 对数据包做标记(标定) Find Next Mark 搜索下一个标记的包 Find Previous Mark 搜索前一个标记的包 Mark All Packets 对所有包做标记 Unmark All Packets 去除所有包的标记 Set Time Reference (toggle) 设置参考时间 (标定
8、) Find Next Reference 搜索下一个参考点 Find Previous Reference 搜索前一个参考点 Preferences 参数选择View视图 Main Toolbar 主工具栏 Filter Toolbar 过滤器工具栏 Wireless Toolbar 无线工具栏 Statusbar 运行状况工具栏 Packet List 数据包列表 Packet Details 数据包细节 Packet Bytes 数据包字节 Time Display Format 时间显示格式 Name resolution名字解析(转换:域名/IP地址,厂商名/MAC地址,端口号/端口
9、名) Colorize Packet List 颜色标识的数据包列表 Auto Scroll in Live Capture 现场捕获时实时滚动 Zoom In 放大显示 Zoom Out 缩小显示 Normal Size 正常大小 Resize All Columns 改变所有列大小 Expand Sub trees 扩展开数据包内封装协议的子树结构 Expand All 全部扩展开 Collapse All 全部折叠收缩 Coloring Rules 对不同类型的数据包用不同颜色标识的规则 Show Packet in New Window将数据包显示在一个新的窗口 Reload 将数据文
10、件重新加Go运行 Back 向后运行 Forward 向前运行 Go to packet 转移到某数据包 Go to Corresponding Packet 转到相应的数据包 Previous Packet 前一个数据包 Next Packet 下一个数据包 First Packet 第一个数据包 Last Packet 最后一个数据包Capture捕获网络数据 Interfaces 选择本机的网络接口进行数据捕获 Options 捕获参数选择 Start 开始捕获网络数据 Stop 停止捕获网络数据 Restart 重新开始捕获 Capture Filters选择捕获过滤器Analyze对
11、已捕获的网络数据进行分析 Display Filters选择显示过滤器 Apply as Filter 将其应用为过滤器 Prepare a Filter 设计一个过滤器 Firewall ACL Rules 防火墙ACL规则 Enabled Protocols 已可以分析的协议列表 Decode As 将网络数据按某协议规则解码 User Specified Decodes 用户自定义的解码规则 Follow TCP Stream 跟踪TCP传输控制协议的通信数据段,将分散传输的数据组装还原 Follow SSL stream 跟踪SSL 安全套接层协议的通信数据流 Expert Info
12、专家分析信息 Expert Info Composite 构造专家分析信息Statistics对已捕获的网络数据进行统计分析 Summary 已捕获数据文件的总统计概况 Protocol Hierarchy 数据中的协议类型和层次结构 Conversations会话 Endpoints 定义统计分析的结束点 IO Graphs 输入/输出数据流量图 Conversation List 会话列表 Endpoint List 统计分析结束点的列表 Service Response Time 从客户端发出请求至收到服务器响应的时间间隔 ANSI 按照美国国家标准协会的ANSI协议分析 Fax T38
13、 Analysis. 按照T38传真规范进行分析 GSM 全球移动通信系统GSM的数据 H.225 H.225协议的数据 MTP3 MTP3协议的数据 RTP实时传输协议RTP的数据 SCTP 数据流控制传输协议SCTP的数据 SIP.会话初始化协议SIP的数据 VoIP Calls 互联网IP电话的数据 无线应用协议的数据 BOOTP-DHCP 引导协议和动态主机配置协议的数据 Destinations通信目的端 Flow Graph 网络通信流向图 HTTP 超文本传输协议的数据 IP address 互联网IP地址 ISUP Messages ISUP协议的报文 Multicast St
14、reams 多播数据流 ONC-RPC Programs Packet Length 数据包的长度 Port Type 传输层通信端口类型 TCP Stream Graph 传输控制协议TCP数据流波形图Help帮助 Contents Wireshark 使用手册 Supported Protocols Wireshark支持的协议清单 Manual Pages 使用手册(HTML网页) Wireshark Online Wireshark 在线 About Wireshark 关于WiresharkWireshark可以将从网络捕获到的二进制数据按照不同的协议包结构规范,翻译解释为人们可以读
15、懂的英文信息,并显示在主界面的中部窗格中。为了帮助大家在网络安全与管理的数据分析中,迅速理解Wireshark显示的捕获数据帧内的英文信息,特做如下中文的翻译解释。Wireshark显示的下面这些数据信息的顺序与各数据包内各字段的顺序相同,其他帧的内容展开与此类似。帧号 时间 源地址 目的地址 高层协议 包内信息概况No. Time Source Destination Protocol Info1 0.000000 202.203.44.225 202.203.208.32 TCP 2764 http SYN Seq=0 Len=0 MSS=1460 源端口目的端口请求建立TCP链接 以下为
16、物理层的数据帧概况Frame 1 (62 bytes on wire, 62 bytes captured)1号帧,线路62字节,实际捕获62字节Arrival Time: Jan 21, 2008 15:17:33.910261000 捕获日期和时间Time delta from previous packet:0.00000 seconds此包与前一包的时间间隔Time since reference or first frame: 0.00 seconds此包与第1帧的间隔时间Frame Number: 1 帧序号Packet Length: 62 bytes 帧长度Capture Le
17、ngth: 62 bytes 捕获长度Frame is marked: False 此帧是否做了标记:否Protocols in frame: eth:ip:tcp 帧内封装的协议层次结构Coloring Rule Name: HTTP 用不同颜色染色标记的协议名称:HTTPColoring Rule String: http | tcp.port = 80染色显示规则的字符串:以下为数据链路层以太网帧头部信息Ethernet II, Src: AcerTech_5b:d4:61 (00:00:e2:5b:d4:61), Dst: Jetcell_e5:1d:0a (00:d0:2b:e5:1
18、d:0a)以太网协议版本II,源地址:厂名_序号(网卡地址),目的:厂名_序号(网卡地址)Destination: Jetcell_e5:1d:0a (00:d0:2b:e5:1d:0a) 目的:厂名_序号(网卡地址) Source: AcerTech_5b:d4:61 (00:00:e2:5b:d4:61) 源:厂名_序号(网卡地址)Type: IP (0x0800)帧内封装的上层协议类型为IP(十六进制码0800)看教材70页图3.2 以下为互联网层IP包头部信息Internet Protocol, Src: 202.203.44.225 (202.203.44.225), Dst: 20
19、2.203.208.32 (202.203.208.32) 互联网协议,源IP地址,目的IP地址Version: 4互联网协议IPv4Header length: 20 bytes IP包头部长度Differentiated Services Field:0x00(DSCP 0x00:Default;ECN:0x00)差分服务字段Total Length: 48IP包的总长度Identification:0x8360 (33632) 标志字段Flags: 标记字段(在路由传输时,是否允许将此IP包分段)Fragment offset: 0分段偏移量(将一个IP包分段后传输时,本段的标识)Tim
20、e to live: 128 生存期TTLProtocol: TCP (0x06) 此包内封装的上层协议为TCPHeader checksum: 0xe4ce correct 头部数据的校验和Source: 202.203.44.225 (202.203.44.225) 源IP地址Destination: 202.203.208.32 (202.203.208.32)目的IP地址 以下为传输层TCP数据段头部信息Transmission Control Protocol, Src Port: 2764 (2764), Dst Port: http (80), Seq: 0, Len: 0 传输
21、控制协议TCP的内容Source port: 2764 (2764)源端口名称(端口号)Destination port: http (80) 目的端口名http(端口号80)Sequence number: 0 (relative sequence number) 序列号(相对序列号)Header length: 28 bytes 头部长度Flags: 0x02 (SYN) TCP标记字段(本字段是SYN,是请求建立TCP连接)Window size: 65535 流量控制的窗口大小Checksum: 0xf73b correct TCP数据段的校验和Options: (8 bytes) 可
22、选项Wireshark简明使用教程wireshark是一款抓包软件,比较易用,在平常可以利用它抓包,分析协议或者监控网络,是一个比较好的工具。这里先说Wireshark的启动界面和抓包界面启动界面:抓包界面的启动是按file下的按钮之后会出现这个是网卡的显示,因为我有虚拟机所以会显示虚拟网卡,我们现在抓的是真实网卡上的包所以在以太网卡右边点击start 开始抓包这个就是抓包的界面了(也是主界面)Wireshark主窗口由如下部分组成:1.菜单用于开始操作。2.主工具栏提供快速访问菜单中经常用到的项目的功能。3.Fiter toolbar/过滤工具栏提供处理当前显示过滤得方法。4.Packet
23、List面板显示打开文件的每个包的摘要。点击面板中的单独条目,包的其他情况将会显示在另外两个面板中。5.Packet detail面板显示您在Packet list面板中选择的包的更多详情。6.Packet bytes面板显示您在Packet list面板选择的包的数据,以及在Packet details面板高亮显示的字段。7.状态栏显示当前程序状态以及捕捉数据的更多详情。1.菜单栏主菜单包括以下几个项目:File 包括打开、合并捕捉文件,save/保存,Print/打印,Export/导出捕捉文件的全部或部分。以及退出Wireshark项.Edit 包括如下项目:查找包,时间参考,标记一个多个包,设置预设参数。(剪切,拷贝,粘贴不能立即执行。)View 控制捕捉数据的显示方式,包括颜色,字体缩放,将包显示在分离的窗口,展开或收缩详情面版的地树状节点GO 包含到指定包的功能。Analyze 包含处理显示过滤,允许或禁止分析协议,配置用户指定解码和追踪TCP流等功能。Statistics 包括的菜单项用户显示多个统计窗口,包括关于捕捉包的摘要,协议层次统计等等。Help 包含一些辅助用户的参考内容。如访问一些基本的帮助文件,支持的协议列表,用户手册。在线访问一些网站,“关于” 2.工具栏(略) 3.过滤工具栏会弹出对话框
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1