2020-04-21更新:

如果你使用的系统是macOS Catalina and Xcode 11,会出现找不到命令的情况:

zsh: command not found: rvictl

这是因为在新版系统中rvictl的路径已经换到/Library/Apple/usr/bin/rvictl

解决方法:

# 将/Library/Apple/usr/bin添加进~/.bash_profile文件中:
export PATH="$PATH:/Library/Apple/usr/bin"

若仍然不行,进入/Applications/Xcode.app/Contents/Resources/Packages/找到MobileDeviceDevelopment.pkg并安装它。

==============================================================

抓http的就不说了,Charles设置代理就OK了,抓TCP的优雅方案(因为是指定设备、不会抓到乱七八糟的包,所以优雅咯,吼吼):

➜  ~ rvictl -s 设备UUID  // 监听

Starting device 设备UUID [SUCCEEDED] with interface rvi0

➜  ~ ifconfig rvi0
rvi0: flags=3005<UP,DEBUG,LINK0,LINK1> mtu 0

此时打开Wireshark 选择rvi0 开始抓包即可!!

➜  ~ rvictl -x 设备UUID

Stopping device 设备UUID [SUCCEEDED]

你可能感兴趣的文章

评论区

已有2位网友发表了看法:

1L 0xcb  2016-04-24 15:00:18 回复
thanks, 刚试了一下,很好用
2L 一休哥  2018-06-29 23:44:30 回复
ios 10.3.3 无论是用wireshark 或者 tcpdump 来监听; 都会 有很多漏包。 而且不稳定 有时候有 有时候没;

发表评论

必填

选填

选填

必填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。