Androi的使用WireShark来调试接口

来源:互联网 发布:黑马程序员视频java 编辑:程序博客网 时间:2024/05/21 10:19

Android连接上WireShark工具

  • 1 借助360wifi工具,从pc上分享出一个wifi信号,当然这一步也可以自己在网络连接中自己创建一个新的无线连接。
  • 2 在手机- 设置- Wlan中找到pc分享出的wifi 设置代理地址和端口。代理地址用CMD,IPCONFIG -ALL来获得,端口号填8080(固定的一个值)。
  • 3 在WireShark面板上选中分享出的信号,点击Start开始抓取。

过滤想要的内容

常用关键词

“eq”等同“==”,“!” 和“not”表示取反,and 和or就不解释了

常用场景

针对IP地址的过滤:

  • 1 对源地址为192.168.0.1的包的过滤,即抓取源地址满足要求的包。表达式为:ip.src == 192.168.0.1
  • 2 对目的地址为192.168.0.1的包的过滤,即抓取目的地址满足要求的包。表达式为:ip.dst == 192.168.0.1
  • 3对源或者目的地址为192.168.0.1的包的过滤,即抓取满足源或者目的地址的ip地址是192.168.0.1的包。表达式为:ip.addr == 192.168.0.1,或者 ip.src == 192.168.0.1 or ip.dst == 192.168.0.1
  • 4要排除以上的数据包,我们只需要将其用括号囊括,然后使用 “!” 即可。
       表达式为:!(表达式)

针对协议过滤

  • 1 仅仅需要捕获某种协议的数据包,表达式很简单仅仅需要把协议的名字输入即可。表达式为:http
  • 2 需要捕获多种协议的数据包,也只需对协议进行逻辑组合即可。表达式为:http or telnet (多种协议加上逻辑符号的组合即可)
  • 3 排除某种协议的数据包表达式为:not arp !tcp

针对端口的过滤(视协议而定)

  • 1 捕获某一端口的数据包表达式为:tcp.port == 80
  • 2 捕获多端口的数据包,可以使用and来连接,下面是捕获高端口的表达式表达式为:udp.port >= 2048

针对长度和内容的过滤(个人用的最多的情景)

  • 1 针对长度的过虑(这里的长度指定的是数据段的长度)表达式为:udp.length < 30 http.content_length <=20
  • 2 针对数据包内容的过滤 表达式为:http.request.uri matches “vipscu” (匹配http请求中含有vipscu字段的请求信息)

参考

0 0