使用Wireshark捕获数据帧和IP数据包教程

使用Wireshark捕获数据帧和IP数据包教程
2007-04-02 10:39

About Wireshark

  Wireshark is one of the world's foremost network protocol analyzers, and is the standard in many parts of the industry.

   It is the continuation of a project that started in 1998. Hundreds of developers around the world have contributed to it, and it it still under active development.

   Wireshark's powerful features make it the tool of choice for network troubleshooting, protocol development, and education worldwide.

   Wireshark was written by an international group of networking experts, and is an example of the power of open source. It runs on Windows, Linux, UNIX, and other platforms.

Features
Wireshark has a rich feature set which includes the following:
  • Standard three-pane packet browser
  • Multi-platform: Runs on Windows, Linux, OS X, Solaris, FreeBSD, NetBSD, and many others
  • Multi-interface: Along with a standard GUI, Wireshark includes TShark, a text-mode analyzer which is useful for remote capture, analysis, and scripting
  • The most powerful display filters in the industry
  • VoIP analysis
  • Live capture and offline analysis are supported
  • Read/write many different capture file formats: tcpdump (libpcap), NAI's Sniffer™ (compressed and uncompressed), Sniffer™ Pro, NetXray™, Sun snoop and atmsnoop, Shomiti/Finisar Surveyor, AIX's iptrace, Microsoft's Network Monitor, Novell's LANalyzer, RADCOM's WAN/LAN Analyzer, HP-UX nettl, i4btrace from the ISDN4BSD project, Cisco Secure IDS iplog, the pppd log (pppdump-format), the AG Group's/WildPacket's EtherPeek/TokenPeek/AiroPeek, Visual Networks' Visual UpTime and many others
  • Capture files compressed with gzip can be decompressed on the fly
  • Hundreds of protocols are supported, with more being added all the time
  • Coloring rules can be applied to the packet list, which eases analysis
   打开Wireshark的界面如下图:
  
   单击工具栏中左边第一个按钮,弹出如下图的窗口:
  
   选择NDIS5.0 driver,点击Start起动Wireshark,界面如下图所示:
  现在我们就可以捕获网络上的数据帧了。现在我们可以做如下操作:
(一)运行->cmd->ping swfc.edu.cn
(二)用IE打开网页: http://cs2.swfc.edu.cn  
(三)登录一个FTP服务器
      
   至此,可以点Stop按钮停止Wireshark的抓捕工作。得到如下图所示的结束,刚才被捕获的数据帧全部在这了。。。
  
   以下来分析数据帧和数据包
   捕 获的数据含义如下:第一列是捕获数据的编号;第二列是捕获数据的相对时间,从开始捕获算为0.000秒;第三列是源地址,第四列是目的地址;第五列是协议 信息;第六列是数据包的信息。为了避免因操作失误导致数据丢失,我们可以先将捕获的数据保存起来(选择file->save命令)。
   以太网的帧格式:
   ARP协议封装在以太网中的格式:
   分析ARP封装在以太网数据帧中
  在下图中Filter后面的编辑框中输入:arp(注意是小写),然后回车或者点击“Apply”按钮。如下图:
   现在只有ARP协议了。其他的协议数据包都被过滤掉了。选中一个数据帧,然后从整体上Wireshark的窗口,主要被分成三部分:上面部分是所有数据帧的列表;中间部分是数据帧的描述信息;下面部分是帧里面的数据。
  中间部分的三行前面都有一个“+”,点击它,这一行就会被展开。现在展开第一行。看到的结果如下:
   在上图中我们看到这个帧的一些基本信息:
          帧的编号:336(捕获时的编号)
帧的大小:60字节。(以太网的帧最小64个字节,而这里只有60个字节,应该是没有把四个字节的CRC计算在里面,加上它就刚好。)
帧被捕获的日期和时间:NOV   30,2006……
帧距离前一个帧的捕获时间差:0.13469……
帧距离第一个帧的捕获时间差:79.8821……
帧装载的协议:ARP
  
  下面看第二行:
   在上图中,我们在上面一栏每选到一部分,在下面一栏就会显示对应的数据部分。我们可以看到:
目的地址(Destination):ff:ff:ff:ff:ff:ff (这是个MAC地址,这个MAC地址是一个广播地址,就是局域网中的所有计算机都会接收这个数据帧)
源地址(Source):Draytek_31:54:ab (00:50:7f:31:54:ab),那么我们知道,00:50:7f是以太网网卡厂商Draytek拥有的一个以太网地址块。
帧中封装的协议类型:0x0806,(这个是ARP协议的类型编号。)
Trailer:是协议中填充的数据,为了保证帧最少有64字节。
接下来展开第三行,结果如下:
   在上图中,我们可以看到如下信息:
   硬件类型(Hardware type):Ethernet(0X0001)
   协议类型(Protocol type): IP(0X0800)
   硬件信息在帧中占的字节数(Hardware size):6
   协议信息在帧中占的字节数(Protocol size):4
   操作码(opcode):requset(0X0001)
   发送方的MAC地址(Sender MAC address):Draytek_31:54:ab (00:50:7f:31:54:ab)
   发送方的IP地址(Sender IP address):192.168.128.1(192.168.128.1)
   目标的MAC地址(Sender MAC address):Draytek_31:54:ab (00:50:7f:31:54:ab)
   目标的IP地址(Sender IP address):192.168.128.1(192.168.128.1)
  类似的,我们也可以看FTP及HTTP封装在以太网数据帧中。(见下面的图示)仔细看一看,居然能在数据帧里看到你登录FTP服务器的用户名和密码(jkxjxxz swfcxs)。原来,这个也是窃取密码的一个途径!(现在你知道你的QQ密码为什么会丢失了吧?!)。
图: FTP封装在以太网数据帧中
 
<think>好的,用户想学习如何使用Wireshark捕获分析以太网。首先,我需要整理一个清晰的步骤教程。根据用户提供的引用内容,特别是引用[1]、[2]、[3]中的信息,我需要确保步骤正确且覆盖关键点。 首先,安装启动Wireshark是基本步骤,但用户可能已经安装了,不过还是应该提到,以防万一。然后选择正确的网络接口,这里需要指导用户如何识别活动接口,比如通过观察流量波动。接下来是捕获过滤器的设置,用户可能需要知道如何过滤非必要流量,比如只捕获以太网,但根据引用[3],用户可能需要分析TCP协议,所以可以提到过滤TCP或HTTP的例子。 开始捕获数据包后,用户需要停止捕获,这时候需要解释如何操作。分析部分,需要指导用户如何查找以太网,比如在详细信息中展开Ethernet II部分,解释源MAC、目的MAC类型字段。引用[1]提到讨论各个字段的含义,这里需要详细说明每个字段的作用,如MAC地址的作用,类型字段如何指示上层协议。 结合引用[3]的例子,可以提到如何查看具体的数据包,比如包号、时间戳、IP地址协议类型。这里可能需要提醒用户注意源目的IP与MAC的关系,以及协议类型如TCP的位置。 最后,过滤分析特定协议的数据包,比如ARP或HTTP,这样用户能更深入应用。常见问题部分需要覆盖无数据包、混杂模式的作用,以及如何保存导出数据。引用[2]提到通过抓包让协议具体化,所以可以强调分析不同协议时的实际应用。 在生成相关问题的时候,需要基于用户可能想深入的方向,比如Wireshark的其他协议分析、过滤表达式写法、排除故障的方法,以及抓包原理。这些问题应该帮助用户进一步探索,同时参考提供的引用内容,确保覆盖相关知识点。</think>### 如何用 Wireshark 捕获并分析以太网 #### **步骤 1:安装并启动 Wireshark** - 下载 Wireshark 并安装(支持 Windows/macOS/Linux)。 - 启动程序后,选择需要监听的网络接口(如 Wi-Fi 或以太网适配器),确保该接口处于活动状态[^1]。 #### **步骤 2:设置捕获过滤器(可选)** - 在捕获前可通过过滤器缩小范围,例如仅捕获 ARP 或 TCP 流量: ```plaintext arp # 仅捕获 ARP 协议数据包 tcp # 仅捕获 TCP 协议数据包 ``` - 若不设置过滤器,默认捕获所有流量。 #### **步骤 3:开始捕获数据包** - 点击「开始」按钮(蓝色鲨鱼鳍图标),Wireshark 会实时显示捕获数据包。 - 操作目标网络行为(如访问网页),生成流量后点击「停止」按钮。 #### **步骤 4:分析以太网** 1. **定位以太网** 在数据包列表中,找到「Ethernet II」类型数据包(通常为链路层数据)。 2. **查看结构** 选中数据包后,在下方详情窗口展开 `Ethernet II` 部分: - **Destination MAC**: 目标设备的物理地址(如 `00:1a:2b:3c:4d:5e`) - **Source MAC**: 发送方的物理地址 - **Type**: 上层协议类型(如 `IPv4` 对应 `0x0800`,ARP 对应 `0x0806`)[^3] ![Ethernet Frame 示例](https://example.com/ethernet-frame.png) *(示意图:包含 MAC 地址协议类型的以太网)* 3. **结合上层协议分析** 若承载的是 IP 数据包,可进一步展开 `Internet Protocol Version 4` 查看源/目的 IP 地址[^3]。 #### **步骤 5:过滤与分析特定流量** - 在显示过滤栏输入表达式,例如: ```plaintext eth.addr == 00:1a:2b:3c:4d:5e # 筛选特定 MAC 地址的流量 eth.type == 0x0800 # 仅显示 IPv4 数据包 ``` --- #### **常见问题解答** 1. **为什么捕获不到数据包?** - 检查网卡是否选择正确。 - 确认是否以管理员/root 权限运行 Wireshark。 2. **混杂模式的作用是什么?** 混杂模式允许网卡捕获所有流经网络接口的数据包(包括非目标为本机的数据),默认启用[^1]。 3. **如何保存捕获结果?** 通过 `File > Save As` 保存为 `.pcapng` 格式,便于后续分析或分享。 ---
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值