Wireshark 是一个网络封包分析软件。网络封包分析软件的功能是获取网络封包,并尽可能显示出最为详细的网络封包资料。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换。

一  安装和配置WireShark环境

1 安装 WireSharek

  去官网上下载最新的而且稳定的版本 。

https://www.wireshark.org/download.html

根据使用的操作系统类型,选择最新的稳定的版本

  根据使用的操作系统类型,选择最新的稳定的版本,安装完成后进入wireshark运行界面。

2 配置 WireShark

查看电脑中有哪些网卡可以获取流量, 点击 capture -> interface

  确定好抓取流量的网卡后,一定要选中混杂模式"use promiscuous mode on all interfaces",否则就无法获取内网的其他信息。然后WireShark就开始捕获网卡的数据了。

二 捕获发送请求

1 使用WireShark捕获报文

在页面中发送一个带参数的request请求如下所示,

  使用WireShark抓取网络数据包后,抓到的数据报文如下图所示:

  选择那条报文,右击鼠标选择"追踪流" -> "TCP流",查看请求返回的数据值。

2 转意请求地址

  发送的请求地址如下,会发现请求的参数(在?后面那堆参数)使用16进制的数字。

http://aaa.com?param=%7B%22resType%22%3A%22vm%22%2C%22projectId%22%3A%2209a362f281b64f3983a9feef8164182b%22%2C%22resourceStatus%22%3A%22%22%2C%22resourcePoolId%22%3A%22%22%2C%22name%22%3A%22%22%2C%22startpage%22%3A%221%22%2C%22pagesize%22%3A%2210%22%7D

  可以通过JS进行解义。

var url ="http://aaa.com?param=%7B%22resType%22%3A%22vm%22%2C%22projectId%22%3A%2209a362f281b64f3983a9feef8164182b%22%2C%22resourceStatus%22%3A%22%22%2C%22resourcePoolId%22%3A%22%22%2C%22name%22%3A%22%22%2C%22startpage%22%3A%221%22%2C%22pagesize%22%3A%2210%22%7D" ;
var decodeUrl = decodeURIComponent(url);
console.log(decodeUrl );

  也可以通过JAVA进行解义。

try
{
  String url ="http://aaa.com?param=%7B%22resType%22%3A%22vm%22%2C%22projectId%22%3A%2209a362f281b64f3983a9feef8164182b%22%2C%22resourceStatus%22%3A%22%22%2C%22resourcePoolId%22%3A%22%22%2C%22name%22%3A%22%22%2C%22startpage%22%3A%221%22%2C%22pagesize%22%3A%2210%22%7D" ;
  String decodeUrl = URLDecoder.decode(url, "UTF-8");
  System.out.println(decodeUrl);
  } catch (UnsupportedEncodingException e)
  {
    e.printStackTrace();
  }

参考文章:http://microsoftarena.net/winpcap-on-windows-8-how-to/

注意:运行Wireshark后如果没有显示网卡的话,那么要用管理员身份运行程序才能见到网卡。

其他资料:

http://www.9upk.com/article/2537.html
http://blog.sina.com.cn/s/blog_5d527ff00100dwph.html
http://openmaniak.com/cn/wireshark_filters.php
http://www.w3school.com.cn/jsref/jsref_decodeURI.asp
http://www.jb51.net/article/22880.htm
http://zhidao.baidu.com/link?url=LlzoCR3yYuDqEWpBueyZ8ZYKxMR14CWzcd_X-T_rKnQDyPVFPUuJF-l4F9-pfnhMKe4gkljvetwpTKmdrtsY6a

使用Wireshark 抓取数据包的更多相关文章

  1. 使用wireshark抓取TCP包分析1

    使用wireshark抓取TCP包分析1 前言 介绍 目的 准备工作 传输 创建连接 握手 生成密钥 发送数据 断开连接 结论 前言 介绍 本篇文章是使用wireshrak对某个https请求的tcp ...

  2. Android移动网络如何抓取数据包

    1)下载tcpdump工具 tcpdump(dump the traffic on a network)是Linux中强大的网络数据采集分析工具之一,可以将网络中传送的数据包头完全截获下来提供分析.它 ...

  3. tcpdump 基于mac地址抓取数据包

    1.刚刚接触tcpdump时,常用tcpdump -i eth1 host 192.168.1.1 这个命令基于ip地址抓取数据包信息. tcpdump -i eth1(接口名称) host 192. ...

  4. Fiddler抓取数据包分析案例

    案例:利用Fiddler抓取苏宁易购网站数据包分析 抓包软件:Fiddler4 请求名字:www.suning.com 详细内容: 一.了解数据包区域的字段含义 图1数据包区域 #:顺序号,按照抓包的 ...

  5. iPhone 手机用 Fiddler 抓取数据包 问题

    近日公司服务升级,将所有的接口请求由HTTP升级为了HTTPS,升级后在手机中安装了Fiddler的证书,Android端抓取HTTPS请求一切正常,可是在ios端抓取HTTPS请求时一直提示“此服务 ...

  6. 利用libpcap抓取数据包

    转载自:http://blog.csdn.net/tennysonsky/article/details/44811899 概述 libpcap是一个网络数据包捕获函数库,tcpdump就是以libp ...

  7. WinPcap抓取数据包

    #WinPcap和Libpcap的最强大的特性之一,是拥有过滤数据包的引擎. 它提供了有效的方法去获取网络中的某些数据包,这也是WinPcap捕获机制中的一个组成部分. 用来过滤数据包的函数是#

  8. Wireshark抓取RTP包,还原语音

    最近在做基于SIP的VoIP通信研究,使用Wireshark软件可以对网络流量进行抓包. VoIP使用RTP协议对语音数据进行传输,语音载荷都封装在RTP包里面.要对传输中的语音进行截获和还原,需要通 ...

  9. Wireshark抓取TCP包分析

    介绍 本篇文章是使用wireshrak对某个https请求的tcp包进行分析. 目的 通过抓包实际分析了解tcp包. 准备工作 在我自己机子上安装的是wireshark2.2.6版本,随机查找了某个T ...

随机推荐

  1. [BZOJ1528][POI2005]sam-Toy Cars(贪心)

    题目:http://www.lydsy.com:808/JudgeOnline/problem.php?id=1528 分析:这个贪心很好想,因为每次如果加入一种玩具,那么必须要删掉一种玩具,就变成了 ...

  2. libsvm使用详细说明

    一,简介 LibSVM是台湾林智仁(Chih-Jen Lin)教授2001年开发的一套支持向量机的库,这套库运算速度还是挺快的,因此成为目前国内应用最多的SVM的库.详细的使用说明及博主博客见下链接: ...

  3. JavaScript的理解记录(3)

    ---接上篇 一.函数:    1. 函数定义后直接执行:var f = (function(x){ return x*10}(10)); 2. 函数的调用有四种方式: 作为函数:作为方法:作为构造函 ...

  4. php file_get_contents失败[function.file-get-contents]: failed to open stream: HTTP request failed!解决

    在使用file_get_contents方法来获取远程文件时会出现 [function.file-get-contents]: failed to open stream: HTTP request ...

  5. Python 一些总结和比较

    数据类型

  6. chrome编辑DOM

    来源于:https://developers.google.com/web/tools/chrome-devtools/inspect-styles/edit-dom The DOM tree vie ...

  7. android file path

    问题 出现的异常为:java.lang.IllegalArgumentException: File /mnt/sdcard/crazyit.bin contains a pathseparator. ...

  8. C# 多线程join的用法,等待多个子线程结束后再执行主线程

    等待多个子线程结束后再执行主线程 class MultiThread{ #region join test public void MultiThreadTest() { Thread[] ths = ...

  9. [转]Cookie/Session机制详解

    原文地址:http://blog.csdn.net/fangaoxin/article/details/6952954 会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话.常用 ...

  10. Android 用代码设置Shape,corners,Gradient

    网上查找资料 记录学习 int strokeWidth = 5; // 3dp 边框宽度 int roundRadius = 15; // 8dp 圆角半径 int strokeColor = Col ...