摘自http://blog.csdn.net/howeverpf/article/details/40687049

Wireshark入门与进阶系列(一)

“君子生非异也,善假于物也”---荀子

本文由CSDN-蚍蜉撼青松 【主页:http://blog.csdn.net/howeverpf】原创,转载请注明出处!

你在百度上输入关键字“Wireshark、使用、教程”,可以找到一大堆相关的资料。那么问题来了,

为什么我还要写这个系列的文章?

前面你能搜到的那些资料,大部分可能存在两个小问题:

  1. 网上大部分资料引自(or译自)Wireshark官方的用户手册,或使用类似于用户手册的写法,它们很详细的告诉你Wireshark有哪些窗
    口、菜单、选项,这些窗口、菜单、选项可以完成什么功能。这对于一个已有基本的使用经验,遇到了疑难杂症需要查询解决的人可能是有效的;对于一个虽无使用
    经验,但空闲时间很多,出于兴趣想全面了解这个工具的人也是合适的;可是对于那些没用用过Wireshark,不求全解,只是因为某种需求,想要快速使用
    Wireshark完成某个任务的小菜们,肯定是不合适的。
  2. 网上大部分资料都有些年头了,因为客观因素制约,大部分资料对应的
    Wireshark版本止步于1.08.x。而当前Wireshark的测试版已经更新到1.99.0,稳定版也已经更新到1.12.1(连我这种习惯慢
    半拍的人使用的都已经是1.10.0……)资料已经有了一丢丢的滞后性。
       That's why I write these articles.
基于第一点,本系列文章除非是专门做窗口功能介绍,否则一律采用“问题/需求-->流程/步骤-->附注/说明”的形式书写;基于第二点,本
系列文章文默认使用的Wireshark版本是1.10.0rc2(下图1是该版本启动后会首先出现的引导界面)。

一、使用Wireshark进行抓包的最基本流程

       有些时候,我们只需要用Wireshark简单的捕获一些数据包看看当前的网络运行情况或是本机通信情况,对数据包的类型和内容并没有一个预期的明确要求,这种情况下,流程很简单:
  1. “启动软件-->选定网卡(网络接口卡的俗称,一般也简称为接口,即Interface)并开始抓包-->停止抓包-->数据包保存”

1.1 启动软件

     
 与老版Wireshark启动后直接进入主界面不同,1.8.x版本开始,软件启动后首先出现的是下图所示的引导界面。该界面中包含了
Wireshark几大最常用功能的快捷按钮,分为Capture、Capture Help、Files、Online四大部分。
图1-1 新版Wireshark引导界面

1.2 选定网卡并开始抓包

       本篇暂时只关注实时数据包捕获,所以我们把目光聚焦到前图1-1左上角的“Capture”部分,如下:

图1-2 新版Wireshark引导界面中与数据包实时捕获相关的部分

该部分存在三个快捷按钮,分别是:Interface List(网卡详细信息列表)、Start(开始抓包),以及Capture Options(捕获选项)。其中“Start”按钮下方是一个简要的网卡列表。当我们在自己的PC上使用Wireshark时,一般我们都对PC上各个网卡的运行情况比较清楚。比如我现在没有插网线,使用的是室友共享出来的WiFi,那正在通信的肯定就只有无线网卡。所以我要抓包,就要先点选图1-2中“Start”按钮下方的“无线网络连接”(若需复选,使用Ctrl键)【中下方黑色方框标注】,然后点击“Start”按钮【中上方黑色椭圆框标注】,Wireshark就开始抓包了。

有些时候我们可能不是很清楚主机上的网卡运行情况,这个时候就需要先点击图1-2中的“Interface List”按钮,弹出如下的网卡详细信息列表,

图1-3 网卡详细信息列表

上图中可以直观地看到各个网卡的上下行数据包计数【右上方黑色圆角方框标注】,根据这一信息,我们可以很明显看出当前只有“无线网络连接”在通信,因此
勾选该网卡前面的复选框【左上方靛青色椭圆框标注】,然后点击“Start”按钮【中下方黑色椭圆框标注】,Wireshark也就开始抓包了。

1.3 停止抓包

想抓的数据包抓完了,就要让Wireshark停下来。手动停止抓包有三种基本的方式,

  1. 使用Ctrl+E组合键
  2. 菜单栏【图1-1上部标注】:依次点击"Capture"-->"Stop"【图1-4所示】
  3. 工具栏【图1-1上部标注】:点击【第四个方形的按钮,图1-5中黑色椭圆框标注】

图1-4 Capture菜单

图1-5 工具栏

1.4 数据包保存

完成数据包的捕获后,可能我们并不急着马上做分析,或者说当前能做的分析还不够完整,需要后面来加深……如此种种,我们需要用文件保存这些数据包。

保存数据包也有三种方式,

  1. 使用Ctrl+S组合键;
  2. 菜单栏:依次点击"File"-->"Save"
  3. 工具栏:点击【第7个按钮,图1-5中黑色圆角方框标注】

而后弹出如下的窗口,

图1-6 Wireshark支持的数据包存储格式

新版Wireshark存储数据包的时候支持很多格式【图1-6中黑色圆角方框标注】。可以看到,默认使用的保存类型是pcapng,这可能是一个优点很多的格式,但出于兼容性的考虑,我还是建议你在存包的时候把存储格式设置为第二个选项【图1-6的黑色圆角方框中着色标注】。这主要是因为pcapng还是一个新玩意,支持他的软件还不够多。

有时候,我们捕获的数据包不止是自己看,还要给同伴分析,如果你的同伴使用的是1.8.x以前的Wireshark版本或者其它他更顺手的工具,那么在业界获得广泛支持的pcap格式一定能为你们的沟通架起快捷的大桥。

保存数据包时,左下角还有一个选项“Compress with gzip”【图1-6中黑色椭圆框标注】,如果你勾选了这个选项,那么会对保存的文件再进行gzip压缩。一般保存数据包的时候都不需要特别勾选这个选项,因为数据包少的时候根本没压缩的必要,数据包多的时候也完全可以保存了文件之后,自己再用压缩软件打包。

至此,最基本的抓包流程就算是介绍完了,本文到此结束,下篇文章将会介绍Capture Options各项的含义与设置,欢迎继续关注!

Wireshark入门与进阶系列(一)的更多相关文章

  1. Wireshark入门与进阶系列(二)

    摘自http://blog.csdn.net/howeverpf/article/details/40743705 Wireshark入门与进阶系列(二) “君子生非异也,善假于物也”---荀子 本文 ...

  2. Wireshark入门与进阶系列五之常见捕获过滤器

    0x00 前言 我们都知道,wireshark可以实现本地抓包,同时Wireshark也支持remote packet capture protocol(rpcapd)协议远程抓包,只要在远程主机上安 ...

  3. Wireshark入门与进阶---数据包捕获与保存的最基本流程

    Wireshark入门与进阶系列(一) "君子生非异也.善假于物也"---荀子 本文由CSDN-蚍蜉撼青松 [主页:http://blog.csdn.net/howeverpf]原 ...

  4. 超全PHP学习资源整理:入门到进阶系列

    PHP是少数几门在语言层面饱受诟病,但在实际开发和应用上却又让人无法撒手的语言之一.就好比路边摊小吃,一遍骂人家不卫生,一遍却又说:真香.所谓接地气,不外如此,大道理不说,PHP光是轮子多.市场占有率 ...

  5. 《jmeter:菜鸟入门到进阶系列》

    jmeter是我从事软件测试工作以来接触的第一个性能测试工具,也是耗费时间精力最多的一个工具,当然,学习jmeter过程中,由于知识储备不够,也顺带学习了很多其他相关的一些知识. 一直有个想法,就是把 ...

  6. SQL Server AlwaysON从入门到进阶(3)——基础架构

    本文属于SQL Server AlwaysON从入门到进阶系列文章 前言: 本文将更加深入地讲解WSFC所需的核心组件.由于AlwaysOn和FCI都需要基于WSFC之上,因此我们首先要了解在Wind ...

  7. SQL Server AlwaysON从入门到进阶(2)——存储

    本文属于SQL Server AlwaysON从入门到进阶系列文章 前言: 本节讲解关于SQL Server 存储方面的内容,相对于其他小节而言这节比较短.本节会提供一些关于使用群集或者非群集系统过程 ...

  8. SQL Server AlwaysON从入门到进阶(1)——何为AlwaysON?

    本文属于SQL Server AlwaysON从入门到进阶系列文章 本文原文出自Stairway to AlwaysOn系列文章.根据工作需要在学习过程中顺带翻译以供参考.系列文章包含: SQL Se ...

  9. SQL Server 扩展事件(Extented Events)从入门到进阶(4)——扩展事件引擎——基本概念

    本文属于 SQL Server 扩展事件(Extented Events)从入门到进阶 系列 在第一二节中,我们创建了一些简单的.类似典型SQL Trace的扩展事件会话.在此过程中,介绍了很多扩展事 ...

随机推荐

  1. ARM架构和X86架构对比

    转载地址 我们就ARM架构的系统与X86架构系统的特性进行一个系统分析,方便用户在选择系统时进行理性.合理的比价分析. 一.性能: X86结构的电脑无论如何都比ARM结构的系统在性能方面要快得多.强得 ...

  2. sizeof与类,继承,virtual的种种(整理)

    对虚继承层次的对象的内存布局,在不同编译器实现有所区别. 首先,说说GCC的编译器. 它实现比较简单,不管是否虚继承,GCC都是将虚表指针在整个继承关系中共享的,不共享的是指向虚基类的指针. clas ...

  3. Family Tree

    Question A traditional constructing tree problem. Given a string to represent relationships, and pri ...

  4. Maximum Subarray 解答

    Question Find the contiguous subarray within an array (containing at least one number) which has the ...

  5. HDU1506(单调栈或者DP) 分类: 数据结构 2015-07-07 23:23 2人阅读 评论(0) 收藏

    Largest Rectangle in a Histogram Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 ...

  6. MySQL无法重启问题解决Warning: World-writable config file ‘/etc/my.cnf’ is ignored

    MySQL无法重启问题解决Warning: World-writable config file ‘/etc/my.cnf’ is ignored

  7. Paper.js - Paper.js

    Paper.js - Paper.js   Paper.js is an open source vector graphics scripting framework that runs on to ...

  8. 那么温暖http合约,入门。

    简介 年提出.经过几年的使用与发展,得到不断地完好和扩展.眼下在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行之中,并且HTTP-NG(Next Generation ...

  9. [裸KMP][HDU1711][Number Sequence]

    题意 找到子串在母串出现的第一个位置 解法 裸的KMP 特别的地方 第一次不看模板自己敲的KMP #include<stdio.h> const int maxn=100000; cons ...

  10. Android常用组件Broadcast介绍

    一.Broadcast简介 Broadcast是Android的四大组件之一.可分为: 1.普通广播 发送一个广播,所有监听该广播的广播接收者都可以监听到改广播. 2.异步广播 当处理完之后的Inte ...