问题
I want to capture the net traffic on my iPhone. So I followed the guid on the official site.
- Connect iOS device to the Mac via USB.
$ rvictl -s UDID
I saw the interface rvi0 via ifconfig -l. I used tcpdump to capture the packet: $ sudo tcpdump -i rvi0 -n tcpdump: WARNING: rvi0: That device doesn't support promiscuous mode (BIOCPROMISC: Operation not supported on socket) tcpdump: WARNING: rvi0: no IPv4 address assigned tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on rvi0, link-type RAW (Raw IP), capture size 65535 bytes
Then I used my iphone5(ios:7.0.2) browse a web page, which worked as normal. But there is no pakect captured by the tcpdump.
回答1:
Please look at the Remote Virtual Interface docs. rvictl -s <<UDID>>
just runs the tool with your device. An output line should read something like Starting device <<UDID>> [SUCCEEDED] with interface <<INTERFACE>>
To view the packets, enter sudo tcpdump -i <<INTERFACE>> -w trace.pcap
When finished with your capture, remove the RVI
using rvictl -x <<UDID>>
and open trace.pcap
(located in your current working directory) using a packet analyzer tool (i.e. WireShark, Cocoa Packet Analyzer, etc.).
回答2:
If the phone is ios7, you need to run Xcode 5. And preferably OSX 10.9 for best results.
来源:https://stackoverflow.com/questions/19200135/ios-remote-virtual-interface-does-not-work