关于Wireshark,熟悉网络或网络性能方面的同学应该知道,使用Wireshark工具通过抓取数据包,对系统网络问题进行分析,该工具简单、易用、易学!

百度百科上面是这样描述的:Wireshark(前称Ethereal)是一个网络封包分析软件,网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换。

Wireshark抓包原理:把Wireshark主机上的网卡接入有线或无线网络开始抓包时,介于有线网卡和抓包引擎之间的软件驱动程序便会参与其中。在Windows和UNIX平台上,分别对应WinPacp和Libcap驱动程序,对于无线网卡,抓包时启动AirPacp驱动程序。

学习Wireshark网络分析,先了解OSI网络协议模型共分为七层:

应用层    指网络操作系统和具体的应用程序,对应WWW服务器、FTP服务器等应用软件

表示层    数据语法的转换、数据的传送等

会话层   建立起两端之间的会话关系,并负责数据的传送

传输层   负责错误的检查与修复,以确保传送的质量,是TCP工作的地方。(报文)

网络层(互联网层) 提供了编址方案,IP协议工作的地方(数据包)

数据链路层  将由物理层传来的未经处理的位数据包装成数据帧

物理层   对应网线、网卡、接口等物理设备(位)

一、wireshark工具界面介绍

抓取网络包后,wireshark面板每一行对应一个网络报文,每一个网络报文包含的信息:

报文接收时间(相对开始抓取的时间点)、源地址IP、目标地址IP、协议以及报文信息。

Frame:物理层的数据帧概况

Ethernet II :数据链路层以太网头部帧

Internet Protocol Version 4:互联网层IP包头的信息

Transmission Control Protocol:传输层的数据段头部信息,此处是TCP协议

Hypertext Transfer Protocol:应用层的信息,此处是HTTP协议

在Wireshark中关于数据包的叫法有三个术语,分别是帧、包、段

所以对于包结构的分析关键在于三个知识点的学习:http header, tcp header, ip header

二、Wireshark架构

wireshark可以被划分为四个主要模块:Capture Core,WireTap, Protocol Interpreter and Dissector和GUIintrerface。其中Capture Core使用pcap(windows下为winpcap,linux下为libpcap)抓取网络数据包,获取数据包后,WireTap把它保存为二进制文件,interpreter and dissector就是把二进制文件展现成用户容易理解的文本形式,其中dissector又分为build-in和plug-in两种,build-in很好理解,plug-in在1.3节会详细介绍一下;GUIinterface,顾名思义就是用户界面了。

架构图:

三、过滤抓包

Wireshark抓包过滤器运作机制是基于tcpdump程序的。

Wireshark的Filter分为两种,一种为Capture Filter,另一种是Display Filter。

启动wireshark后,在抓包前,可以使用Capture Filter进行过滤抓包

过滤条件:

#针对服务器IP地址进行过滤抓取

host 58.67.220.228

#针对抓取请求端口进行过滤抓取

port 9080

#只抓取源或目的端口范围的2000到2500之间的TCP数据包

tcp portrange 2000-2500

另一种是Display Filter,这是在抓取包之后,在wireshark界面上操作,进行过滤信息

Wireshark网络分析工具(一)的更多相关文章

  1. Wireshark网络分析工具(二)

    一.TCP三次握手过称 1. 第一次握手的数据包 客户端发送一个TCP,标志位为SYN,序列号为0, 代表客户端请求建立连接. 如下图: 2. 第二次握手的数据包 服务器发回确认包, 标志位为 SYN ...

  2. [转] X-RIME: 基于Hadoop的开源大规模社交网络分析工具

    转自http://www.dataguru.cn/forum.php?mod=viewthread&tid=286174 随着互联网的快速发展,涌现出了一大批以Facebook,Twitter ...

  3. Wireshark网络分析实战笔记(三)基本信息统计工具的使用方法

    Capture File Properties:获取网络中数据包的整体信息 用法:Statistics菜单条下Capture File Properties选项 Protocol Hierarchy: ...

  4. VISION控制器标定及网络分析工具

    VISION 标定和数据采集软件是一个强大的集成工具包,各个工具包可以无缝组合在一起,提供集成的可定制的应用程序,从而能够实现完整的标定和数据分析功能,包括从电子控制单元及外部源收集数据,测量输入和输 ...

  5. WireShark网络分析就这么简单 读后感

    京东618活动,满200减100,果断入手了这本经典的 WireShark教程

  6. Wireshark网络分析就这么简单

    tcpdump抓包命令: root#tcpdump -I eth0 -s 80 -w /tmp/tcpdump.cap 注:其中80表示,只抓每个包的前80个字节. 抓包时就筛选自己需要的包: Wir ...

  7. 读《Wireshark网络分析就这么简单》读书笔记

    晚上花了两个多小时看完这本书,记录下一些看书过程中的笔记. 一.问题:A和B 是否能正常通信? 两台服务器A和服务器B的网络配置 A                                  ...

  8. Wireshark网络分析实战笔记(一)抓包过滤器

    抓包过滤器和显示过滤器的差别: 1.抓包过滤器配置在抓包之前,wireshark仅仅抓取抓包过滤器过滤的数据 2.显示过滤器配置在抓包后,wireshark已经抓取全部的数据包,显示过滤器让wires ...

  9. Wireshark网络分析就这么简单——读书笔记

    前言 什么是wireshark? wireshark可能是世界上最好的开源网络分析器,能在多个平台上(Linux.Mac和Windows)抓取和分析网络包 wireshark分析常见的协议,可以在学习 ...

随机推荐

  1. HDU 4287 Intelligent IME(map运用)

    转载请注明出处:http://blog.csdn.net/u012860063 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4287 Intellig ...

  2. ibatis 动态查询

    http://www.iteye.com/topic/393042最近做了很多动态的查询,尤其是排序,以及一些状态字段,所以就做了一个总的动态查询,以不变应万变,呵呵 ibatis 里面的sql代码: ...

  3. rational rose 2007安装破解全过程

    1:下载安装文件 下载地址: http://pan.baidu.com/s/1c0ldKEs 2:下载虚拟光驱 由于下载的文件须要光驱安装,所以须要下载一个虚拟光驱,虚拟光驱名称:daemon too ...

  4. Atitit.php opcode虚拟机指令集 分类以及详细解释

    Atitit.php opcode虚拟机指令集 分类以及详细解释 1. 指令集常用分类:: Mov移动指令 算数逻辑移位指令 跳转指令 Oo指令 类型转换指令 2. 与jvm  clr指令集合对比 P ...

  5. netty的理解

    netty作为nio应用的典范,在很多设计方面都值得我们在程序开发中学习. 1.事件驱动,三种事件的传播机制.一种是在channel上触发,一种是在pipeline上触发,一种是在context上触发 ...

  6. PHP预定义常量DIRECTORY_SEPARATOR

    PHP预定义常量DIRECTORY_SEPARATOR BY 天涯 · // DIRECTORY_SEPARATOR是一个显示系统分隔符的命令,DIRECTORY_SEPARATOR是PHP的内部常量 ...

  7. FreeBSD将SHELL从csh换成bash并支持中文显示

    刚准备在FreeBSD下学习Shell,结果发现怎么好多命令都没有,比如declare.后来发现连bash都没有,好像bash用的多一些吧,于是就准备将csh换成bash. 由于没有bash,所以先得 ...

  8. 内核交互--sysfs

    文档介绍:http://lxr.linux.no/linux+v2.6.37/Documentation/filesystems/sysfs.txt The sysfs Filesystem Sysf ...

  9. 【OC学习-13】什么是组合,它和继承是什么关系?

    继承有两缺点:(1)当层级越来越多时,假如每一个层级都有实例变量,那么最下层的子类继承的实例变量会超级多,沉重.(2)当消息传递自子类往上时.层级越多,效率越低下. 所以就有了组合.说实话区分继承和组 ...

  10. hadoop集群加入新节点hhbase调试

    一.改动vi /etc/hosts 添加节点ip.(没个节点都要加入 )  二.设置hostname     vi /etc/sysconfig/network      把hostname改为nod ...