【问题标题】:iOS remote virtual interface does not workiOS远程虚拟接口不起作用
【发布时间】:2013-10-12 13:38:16
【问题描述】:
我想在我的 iPhone 上捕获网络流量。所以我按照官方网站上的指南进行操作。
- 通过 USB 将 iOS 设备连接到 Mac。
-
$ rvictl -s UDID
我通过 ifconfig -l 看到了接口 rvi0。我使用 tcpdump 来捕获数据包:
$ sudo tcpdump -i rvi0 -n
tcpdump:警告:rvi0:该设备不支持混杂模式
(BIOCPROMISC:套接字不支持操作)
tcpdump:警告:rvi0:未分配 IPv4 地址
tcpdump:详细输出被抑制,使用 -v 或 -vv 进行完整协议解码
监听 rvi0,链接类型 RAW(原始 IP),捕获大小 65535 字节
然后我用我的iphone5(ios:7.0.2)浏览了一个网页,正常工作。但是还有
tcpdump 没有捕获到任何数据包。
【问题讨论】:
标签:
ios
networking
capture
packet
【解决方案1】:
请查看Remote Virtual Interface docs。 rvictl -s <<UDID>> 只需在您的设备上运行该工具。输出行应该是Starting device <<UDID>> [SUCCEEDED] with interface <<INTERFACE>>要查看数据包,输入sudo tcpdump -i <<INTERFACE>> -w trace.pcap
完成捕获后,使用 rvictl -x <<UDID>> 删除 RVI 并使用数据包分析工具(即 WireShark、Cocoa Packet Analyzer 等)打开 trace.pcap(位于您当前的工作目录中)。
【解决方案2】:
如果手机是 ios7,则需要运行 Xcode 5。最好是 OSX 10.9 以获得最佳效果。