WireShark 基本介绍
文中内容主要转自:http://www.cnblogs.com/TankXiao/archive/2012/10/10/2711777.html
一、Wireshark 与 Fiddler 比较:
Fiddler是在windows上运行的程序,专门用来捕获HTTP,HTTPS的。wireshark能获取HTTP,也能获取HTTPS,
但是不能解密HTTPS,所以wireshark看不懂HTTPS中的内容。
总结,如果是处理HTTP,HTTPS 还是用Fiddler, 其他协议比如TCP,UDP 就用wireshark
二、WireShark使用简介
1. 开始界面:
2. wireshark是捕获机器上的某一块网卡的网络包,当你的机器上有多块网卡的时候,你需要选择一个网卡。点击Caputre->Interfaces.. 出现下面对话框,
选择正确的网卡。然后点击"Start"按钮, 开始抓包如果服务和访问端在一台电脑上,貌似不能捕获到访问信息。
3. Wireshark 窗口介绍:
WireShark 主要分为这几个界面:
1). Display Filter(显示过滤器),用于过滤
2). Packet List Pane(封包列表),显示捕获到的封包,有源地址和目标地址,端口号。颜色不同,代表
3). Packet Details Pane(封包详细信息), 显示封包中的字段
4). Dissector Pane(16进制数据)
5). Miscellanous(地址栏,杂项)
4. 过滤器有两种:
1). 显示过滤器,用来在捕获的记录中找到所需要的记录。单击左边的Filter可进入过滤器的设置界面。在设置界面右边选择框中,可以单击相应规则名称,
查看具体过滤规则。最重要的是,我可以模仿现有的规则,新建适合自己程序的过滤规则。通过单击左边的New按钮,新建我们自己的过滤规则。
2). 捕获过滤器,用来过滤捕获的封包,以免捕获太多的记录。我们可以通过 Capture -> Options...,进入Capture Options 设置界面。然后单击里面
的Capture Filter按钮,进入捕获过滤器设置界面。然后可模仿已有的规则,设置新的过滤规则。
(我用的版本是v1.12.1,有些版本的Capture Filter按钮按钮可能不在Capture Options设置界面。具体在哪自己找吧。)
注意:当设置正确地过两个规则时,过滤器所在框背景色为绿色。若规则错误,过滤器所在框背景色为红色。
5. 封包详细信息(Packet Details Pane):这个面板是我们最重要的,用来查看协议中的每一个字段。各行信息分别为:
1). Frame: 物理层的数据帧概况
2). Ethernet II: 数据链路层以太网帧头部信息
3). Internet Protocol Version 4: 互联网层IP包头部信息
4). Transmission Control Protocol: 传输层T的数据段头部信息,此处是TCP
5). Hypertext Transfer Protocol: 应用层的信息,此处是HTTP协议
三、 相关知识介绍:
1. wireshark与对应的OSI七层模型:
2. TCP包的具体内容:
3. 实例分析TCP三次握手过程:
4. 我们用wireshark实际分析下三次握手的过程。打开wireshark, 打开浏览器输入 http://www.cnblogs.com/tankxiao。在wireshark中输入
http过滤, 然后选中GET /tankxiao HTTP/1.1的那条记录,右键然后点击"Follow TCP Stream",这样做的目的是为了得到与浏览器打开网站
相关的数据包,将得到如下图:
图中可以看到wireshark截获到了三次握手的三个数据包。第四个包才是HTTP的, 这说明HTTP的确是使用TCP建立连接的。
第一次握手数据包。客户端发送一个TCP,标志位为SYN,序列号为0, 代表客户端请求建立连接。 如下图:
第二次握手的数据包。服务器发回确认包, 标志位为 SYN,ACK. 将确认序号(Acknowledgement Number)设置为客户的ISN加1以.即0+1=1, 如下图:
第三次握手的数据包。客户端再次发送确认包(ACK) SYN标志位为0,ACK标志位为1.并且把服务器发来ACK的序号字段+1,
放在确定字段中发送给对方.并且在数据段放写ISN的+1, 如下图:
WireShark 基本介绍的更多相关文章
- Wireshark基本介绍和学习TCP三次握手
wireshark介绍 wireshark的官方下载网站: http://www.wireshark.org/ wireshark是非常流行的网络封包分析软件,功能十分强大.可以截取各种网络封包,显示 ...
- Wireshark基本介绍和学习TCP三次握手(转)
http://www.cnblogs.com/TankXiao/archive/2012/10/10/2711777.html 之前写过一篇博客:用 Fiddler 来调试HTTP,HTTPS. 这篇 ...
- Wireshark基本介绍及应用tcp
wireshark介绍 wireshark的官方下载网站: http://www.wireshark.org/ wireshark是非常流行的网络封包分析软件,功能十分强大.可以截取各种网络封包,显示 ...
- Wireshark 基本介绍和学习 TCP 三次握手
这篇文章介绍另一个好用的抓包工具 Wireshark, 用来获取网络数据封包,包括 HTTP.TCP.UDP 等网络协议包. 记得大学的时候就学习过TCP的三次握手协议,那时候只是知道,虽然在书上看过 ...
- ★Wireshark基本介绍和学习TCP三次握手
之前写过一篇博客:用 Fiddler 来调试HTTP,HTTPS. 这篇文章介绍另一个好用的抓包工具wireshark, 用来获取网络数据封包,包括http,TCP,UDP,等网络协议包. 记得大学的 ...
- Wireshark基本介绍和TCP三次握手
转自:http://www.cnblogs.com/TankXiao/archive/2012/10/10/2711777.html 之前写过一篇博客:用 Fiddler 来调试HTTP,HTTPS. ...
- (转)Wireshark基本介绍和学习TCP三次握手
原地址https://www.cnblogs.com/TankXiao/archive/2012/10/10/2711777.html#filter 阅读目录 wireshark介绍 wireshar ...
- Wireshark基本介绍和学习TCP三次握手 专题
wireshark有两种过滤器: 捕捉过滤器(CaptureFilters):用于决定将什么样的信息记录在捕捉结果中.显示过滤器(DisplayFilters):用于在捕捉结果中进行详细查找. 捕捉过 ...
- 转:Wireshark基本介绍和学习TCP三次握手
源地址:http://www.cnblogs.com/TankXiao/archive/2012/10/10/2711777.html 之前写过一篇博客:用 Fiddler 来调试HTTP,HTTPS ...
随机推荐
- java读取写入oracle的blob字段工具类
import com.hzunitech.fxgk.sys.model.UtFileData;import com.jfinal.kit.PathKit;import com.jfinal.plugi ...
- vim自定义语法高亮(syntax highlight)设置流程
这里用一个非常简单的例子来展示vim自定义自己的语法并高亮显示的设置流程. 所使用的实例语言是python,为了区分vim自带的python语法,我们把文件名保存为test.me,其内容如下图所示: ...
- ELKStack生产案例
需求分析: 访问日志:apache访问日志,nginx访问日志,tomcat file 错误日志: error log,java日志 直接收 java异常需要处理 系统日志:/var/log/* ...
- java.sql.SQLException:The Network Adapter could not establish the connection
数据库连不上了,可能数据断了或者修改IP了
- 浙江工业大学校赛 小M和天平
小M和天平 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Subm ...
- FW 每秒百万级别的 HTTP 请求 sung: 重型的(heavy-duty)、分布式的、多协议测试工具
本文是构建能够每秒处理 3 百万请求的高性能 Web 集群系列文章的第一篇.它记录了我使用负载生成器工具的一些经历,希望它能帮助每一个像我一样不得不使用这些工具的人节省时间. 负载生成器是一些生成用于 ...
- 删除server服务文件
某用户升级ArcGIS for Server后,出现了之前版本server中的服务残留的现象,且服务访问不正常,怎样彻底删除的残留文件. 即怎样删除ArcGIS for Server中发布的某个服务涉 ...
- 运行Chromium浏览器无法登录谷歌账号因为缺少google api密钥
管理员身份运行CMD,然后依次输入以下三行内容(因为比较长,最好拷贝,因为某原因粘贴第一行后,我输入了下,结果第一次没成功,可能是输入错误了.): setx GOOGLE_API_KEY " ...
- 学习计划 mysql explain执行计划任务详解
我们在之前已经找到了需要优化的SQL,但是怎么知道它的那些方面需要优化呢? explain就是为了这个使用的. explain显示了 mysql 如何使用索引来处理select语句以及连接表.可以帮助 ...
- Socket通信的Python实现
Python中实现socket通信,socket通信的服务端比较复杂,而客户端非常简单,所以客户端基本上都是用sockct模块实现,而服务 端用有很多模块可以使用.下面就说一下服务端可使用的模块. 模 ...