我正在尝试从我的iPhone应用程序中捕获数据包。它不使用HTTP进行通信,而是使用自定义协议连接我的服务器。我无法使用Paros来监控发送的数据包。
是否可以通过wireshark代理日期,就像Paros for http一样?
答案 0 :(得分:9)
您无法通过Wireshark本身代理数据;问题是让Wireshark在可以看到流量的地方运行。 (如果只有命令行,则可以运行tcpdump并捕获数据包,然后将转储文件加载到具有UI的其他地方的Wireshark中。)
你在Mac上吗?如果是这样,请将您的mac插入以太网,以便它具有Internet连接(或者与服务器的连接,无论如何)。然后通过WiFi分享您的Mac的互联网连接。使用iPhone连接到此wifi点。在Mac上运行Wireshark(启用混杂模式),然后使用您的iPhone应用程序并观看Wireshark。无需乱搞服务器或转发X11连接!您也可以使用Windows PC执行非常类似的操作。
答案 1 :(得分:2)
在服务器上运行wireshark - 你会看到那里的流量。
答案 2 :(得分:1)
有效的最佳解决方案:
通过USB连接设备并输入以下命令:
rvictl -s UDID
(UDID =设备ID,32个字符,您可以在iTunes中找到它,或者在Xcode中找到“设备和模拟器”)
sudo launchctl list com.apple.rpmuxd
sudo tcpdump -n -t -i rvi0 -q tcp
或者只是sudo tcpdump -i rvi0 -n
如果rvictl无法正常工作,请安装Xcode(或参见-bash : rvictl: command not found, Mac book pro OS X 10.7.5 & Xcode 4.6)
欲了解更多信息: Remote Virtual Interface
http://useyourloaf.com/blog/2012/02/07/remote-packet-capture-for-ios-devices.html