博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Mac OS X 在捕捉AppLAN通信包
阅读量:6481 次
发布时间:2019-06-23

本文共 1390 字,大约阅读时间需要 4 分钟。

Mac OS X 在捕捉AppLAN通信包

一.拍摄模式

由于工作关系。经常要分析App wifi通讯协议。我的开发电脑是Mac Book.

大体有例如以下几种模式:
+ App与server进行http通讯,这样的情况下Http调试神器Charles 就派上用场。

(这个參见本人其他博文)

+ App 与智能设备进行Wifi设备,通常是TCP包居多,往往不须要联入互联网,仅仅是局域通讯。

它须要用抓包软件Wireshark.

本文就是这样的局域网Tcp模式,这样的模式下无法使用Charles代理器模式,直接在电脑上仅仅能抓自身的wifi包,无法抓到手机与智能设备之间的通讯。

后来综合找到一种可行模式。即Mac OS X打开互联网共享充当一个路由器。

然后手机和智能设备均接这个虚拟路由器进行通讯,在Mac OS X 执行Wireshark 来捕获全部经过这个虚拟路由器的包。

二.打开Mac OS X 互联网共享

在英文版也称为Air port 共享。

它须要几个条件:
1. 以太网需接入互联网,通常就是用网线接到自家的真正的路由器上,即使通讯无需互联网,也要如此,否则无法调出互联网共享模式。

  1. 智能设备能使用路由器通讯(一般这个是标准功能)

打开方法例如以下:

打开系统偏好设置–>共享

Alt text

在互联网共享中,作例如以下设置

1. 选择以太网作路由器WAN口联接。

2. 选择“Wi-Fi”共享给其他设备
3. 点击”Wifi 选项”设置这个虚拟路由器的热点名,password
4. 点击”互联网共享“打开虚拟路由器

Alt text

Alt text

启动后,在左上角的Wifi 标志会出现一个小箭头。表示进入wifi共享模式

Alt text

三.安装wireshark

wireshark 是基于Linux X11图形界面的强大网络工具,因此天然是支持Linux.随着X11 被移植到windows和Mac OS X。WireShark也支持多个操作系统。

Mac OS X 10.10 安装X11应用程序XQuartz

苹果最早在10.3 增加X11支持库,可是在10.10 又移走了对X11的支持,因此开发人员必须手工先安装x11支持库 XQuartz .

首先下载

执行dmg安装,但非常奇怪没有在应用程序栏出现图标。重新启动机器。

但它是安装在 /Applications/Utilities/XQuartz.app 之下,因此你能够手工打开这个应用程序,它会出现一个终端窗体。

安装WireShark

这里

下载mac版安装

在XQuartz终端下执行就可以执行

sudo wireshark

Alt text

注意这里的sudo是必须的,否则没有权限使用wifi的设备结点。

Alt text

这是执行界面。

注意在Mac Book 下。实际的wifi设备结点是 en1.仅仅有捕获这个网卡的包,才是手机和智能设备之间的包。

Alt text

開始抓包吧!

这样当你的手机操作时,这时能就看到它的通讯包了。

Alt text

四.后记

本架构也能捕获App移动互联网http通讯包。

可是这一架构过于复杂,须要以太网。wifi,以及WireShark 的界面过于复杂。

因此用App作http通讯时,抓包还是用Charles 简单好用(仅仅需wifi就可以)

windows7 也能通过虚拟wifi功能实现相同机制,详细參见

版权声明:本文博主原创文章。博客,未经同意不得转载。

你可能感兴趣的文章
LeetCode:463. Island Perimeter
查看>>
【原创】Amodeler实体与ACAD实体之间进行转换
查看>>
pyinstaller使用错误 SyntaxError: Non-UTF-8 code starting with '\xb4' in file C:......
查看>>
正则表达式
查看>>
Exchange企业实战技巧(27)邮件中使用数字签名和邮件加密功能
查看>>
python并发线程那些事
查看>>
BAT大厂面试算法进阶(1)--两数之和
查看>>
mysql-5.6.27源码安装及错误解决办法
查看>>
Shell 函数、数组与正则表达式
查看>>
编译安装PHP时两个报错的解决办法
查看>>
关于python3.6安装pymssql报错
查看>>
【云快讯】之五十四《AWS提供Aurora数据库替代开源的MySQL》
查看>>
System Center 2012 SP1 Data Protection Manager 防止重复备份数据
查看>>
python实现带验证码网站的自动登陆
查看>>
关于复制Linux虚拟机后无法相互ping通的问题
查看>>
微软职位内部推荐-Software Development Engineering II
查看>>
sql 2000 "无法执行查询,因为一些文件缺少或未注册"的
查看>>
如何敏捷地进行代码评审
查看>>
mysql 案例~mysql主从复制延迟处理(2)
查看>>
Python文件基本操作及上下文管理
查看>>