捕获从模拟器到同一台机器上的服务器的流量
capture traffic from emulator to a server on the same machine
我正在尝试使用 pcap4j 从 android 模拟器/ios 模拟器捕获 http 流量到托管在同一台机器上的服务器。机器可以 运行 linux / windows 或 osx.
我先尝试从wireshark抓包进行测试,但没有抓到任何数据。我猜这是因为仿真器使用环回接口与服务器通信,因为它们 运行ning 在同一台机器上。除了让模拟器使用某种 "man in the middle http proxy"?
之外,有什么方法可以捕获流量?
谢谢。
iOS 模拟器使用与主机相同的网络接口。没有单独的接口,Wireshark 将看到来自 iOS 模拟器的流量,就像它看到来自任何其他 Mac OS 应用程序的流量一样。
I tried capturing packets from wireshark first for testing, but it didn't catch any. I guess this is because the emulator uses the loopback interface to talk to the server since they are running on the same machine
是的,所以,除非您在环回接口上进行捕获,否则您将看不到流量。在 Linux 上,该接口称为 "lo";在 OS X(和大多数其他 UN*Xes)上,它被称为 "lo0"。不幸的是,在 Windows,你运气不好。
我正在尝试使用 pcap4j 从 android 模拟器/ios 模拟器捕获 http 流量到托管在同一台机器上的服务器。机器可以 运行 linux / windows 或 osx.
我先尝试从wireshark抓包进行测试,但没有抓到任何数据。我猜这是因为仿真器使用环回接口与服务器通信,因为它们 运行ning 在同一台机器上。除了让模拟器使用某种 "man in the middle http proxy"?
之外,有什么方法可以捕获流量?谢谢。
iOS 模拟器使用与主机相同的网络接口。没有单独的接口,Wireshark 将看到来自 iOS 模拟器的流量,就像它看到来自任何其他 Mac OS 应用程序的流量一样。
I tried capturing packets from wireshark first for testing, but it didn't catch any. I guess this is because the emulator uses the loopback interface to talk to the server since they are running on the same machine
是的,所以,除非您在环回接口上进行捕获,否则您将看不到流量。在 Linux 上,该接口称为 "lo";在 OS X(和大多数其他 UN*Xes)上,它被称为 "lo0"。不幸的是,在 Windows,你运气不好。