作为网络开发人员,使用fiddler无疑是最好的选择,方便易用功能强。

  但是什么作为爱学习的同学,是不应该止步于http协议的,学习wireshark则可以满足这方面的需求。wireshark作为抓取各种底层协议的包有着强大的功能,用于网络排错或者一些其他通讯方面的查看,是必须的。

  以前有自己看过wireshark相关的简要教程,也是一知半解。借助《Wireshark数据包分析实战》一书,更准确知晓wireshark到底能干啥吧!

1. 网络七层协议(老生长谈了,看过许许多多的书,都会提到的一个)

  应用层 - 直接面对用户的一层

  表示层 - 用于加解密

  会话层 - 两台计算机之间的会话管理

  传输层 - 无差错传输

  网络层 - 路由转发

  数据链路层 - 提供寻址方案

  物理层 - AD & DA

2. Wireshark捕获

  在capture > Interface 选择一个网卡设备,点击start即可进行捕获了。对,数据量非常大!

3. Wireshark过滤

  不使用过滤的话,wireshark的数据,可以说几乎无用,太多了,适当使用过滤,捕获有效数据方为上策。

  BPF语法(Berkeley Packet Filter)。 (后置名字意义)Type: host, net, port; (传输方向)Dir: src, dst; (协议)Proto: ether, ip, tcp, udp, http, ftp, icmp; 如:dst host 192.168.1.1 && tcp port 80

  显示过滤(从捕获的文件中过滤): ip.addr == 192.168.1.1, frame.len <=128, http, tcp.flags.syn == 1

4. 从捕获的文件中查看一些高级统计特性

  查看单个包,可以知道通信细节,查看统计数据则能更快速得到一些结论,总览全局

  查看端点: Stastics > Endpoints

  查看网络会话: Statistics > Conversations

  基于协议的统计数据: Stastics > Protocol Hierarchy

  跟踪tcp流: 右击一条数据包 > Follow Tcp Stream, 该功能和fiddler的抓包功能类似,可以查看通信数据,但是对于加密的数据则只会看到乱码

  查看IO图:Statistics > IO Graphs ,吞吐量查看

5. 一些捕获示例

  书上举例,捕获twitter、facebook流量,操作方式就是如上简单的捕获,了解即可!

6. 辅助排查问题

  ...

wireshark捕获的是更全的数据包,但是相对复杂,对于普通的网络开发可能不太适用,但是常规了解一下还是有必要的哦。

  重在成长!

  附小技巧:刚刚在编辑该文章时,由于浏览页面的切换,导致该文章完全一片空白,没有保存不敢刷新,吓得我以为我一个个打的字已经白费? 幸好挽救回来了。操作如下:

    网页 > 另存为 > EditPosts.aspx_files > saved_resource.html 里面就有刚刚写好的文章,总算是被保存下来了!

《Wireshark数据包分析实战》 - http背后,tcp/ip抓包分析的更多相关文章

  1. IOS抓包工具Stream——让移动端的抓包变得轻而易举

    有一天下晚班回家,在地铁上的时候,开发发来信息说,能不能把之前创建的bug再抓包看下数据.顿时心里就想,在地铁上,我上哪抓包去.之后百度了下,发现ios有一款非常实用的抓包工具,大家可以上App St ...

  2. 《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(11)-Fiddler设置安卓手机抓包,不会可是万万不行的!

    1.简介 Fiddler不但能截获各种浏览器发出的 HTTP 请求,也可以截获各种智能手机发出的HTTP/ HTTPS 请求. Fiddler能截获 Android 和 Windows Phone 等 ...

  3. TCP头部格式详解,附Wireshark对TCP头部抓包分析

    TCP之所以能为数据通讯提供可靠的传输,主要在于TCP数据包头部功能非常多. 那么,我们先来看看TCP头部格式(RFC 793.1323定义了TCP头部): TCP头部格式中的内容解析如下:(文末还有 ...

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

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

  5. wireshark抓包实战(一),抓包原理

    一.什么样的"包"能被wireshark抓住呢? 1.本机 即直接抓取进出本机网卡的流量包.这种情况下,wireshark会绑定本机的一块网卡. 2.集线器 用于抓取流量泛洪,冲突 ...

  6. python tcp 实时抓包

    问题:之前我们系统上线后,因为是旧的系统,没有加统计的功能,比如用户喜欢那个页面,是哪些用户再访问,接口的负载能力等等. 解决办法:1,现有代码更改,添加功能.现有代码侵入太多,工作量比较大 2,想到 ...

  7. Wireshark抓包工具的简单使用2(抓包、查看、过滤)

    在简单了解了Wireshark的界面以及各工具栏的作用后,也要掌握如何进行抓包,查询,过滤等操作 一.抓包 1.打开软件,初始界面 2.点击Caputre-->Interfaces,出现当前所有 ...

  8. TCP/IP 协议简单分析

    首先TCP和IP是两种不同的协议,它们来七层网络模型中分别在不同的层次,IP协议是网络层的协议,TCP是更高一层的传输层的协议,TCP是建立在IP协议之上的,所以一般把TCP和IP连在一起说TCP/I ...

  9. charles抓包误点deny处理办法及日常抓包

    误点deny方法在最底下~~ (博文为转载) 我们在开发网站项目的时候,我们可以通过浏览器的debug模式来看request以及response的数据,那么如果我们开发移动端项目没有网页呢?如何抓取数 ...

随机推荐

  1. myeclipse2014激活

    MyEclipse2014破解教程 一. 在破解myeclipse2014之前,要先把环境变量配置好: 1)打开我的电脑--属性--高级--环境变量 2)新建系统变量JAVA_HOME 和CLASSP ...

  2. Tomcat中使用JNDI加载JDBC数据源

    以前写JDBC的时候总是手工写一个类,用硬代码写上className.url.用户名和密码什么的,然后通过DriverManager获取到Connection.那样写是很方便,但是如果想更改的话,需要 ...

  3. 斯坦福公开课:Statistical Learning中做错的选择题

    4.4 R1 In which of the following problems is Case/Control Sampling LEAST likely to make a positive i ...

  4. spring4+hibernate4+maven环境搭建

    本文主要介绍利用maven搭建spring4+hibernate4开发环境. 首先我们创建一个maven项目,具体步骤就不详细介绍了,看看我们pom.xml文件 <project xmlns=& ...

  5. 【Visual Lisp】图元选择集专题

    图元选择集专题;;★★★01.选择集操作★★★(setq ss (ssadd));;创建一个空选择集(ssadd (car(entsel)) ss);;将点取的图元添加到ss选择集中,可以不用setq ...

  6. 为Page添加INotifyPropertyChanged功能

    在Page页面里面, DataContext 更新后,前台数据要求会自动更新. 但前台的绑定如果用x:bind 语法. 它要求强类型.直接关联到DataContext上就不行了. 需要为Page 添加 ...

  7. 再谈CSHELL对C程序员的价值

    几个礼拜前,介绍了CSHELL.http://www.cnblogs.com/hhao020/p/4974542.html今天再试着介绍下,希望能有更多C程序员留意到它,从中获益. 很多年前,我在调试 ...

  8. ASP.NET Web服务调用发生错误,错误代码404

    现象: iOS端使用ASIHTTP连接Web服务时,得到的数据是一个错误代码为404的页面,错误信息(web.config添加<customErrors mode="Off" ...

  9. 【转】Linux 文件夹文件创建与删除

    [转自:Linux文件夹文件创建.删除 - 风生水起 - 博客园] 1. 删除文件夹 rm -rf  fileNamede> -删除文件夹实例:rm -rf /var/log/httpd/acc ...

  10. 去掉tableview cell的左边间隙问题

    http://www.jianshu.com/p/ba32f45222e0 简书上面的一篇文章.