2015-04-16 15 views

Odpowiedz

9

Maszyny wirtualne Genymotion mają dwie karty sieciowe w podstawowej konfiguracji VirtualBox. Którą należy przechwycić zależy od tego, czego szukasz. Niektóre szczegóły (nazwy adapterów itp.) Zależą od systemu operacyjnego, z którego korzystasz. Jednak pojęcia są identyczne.

Adapter 1, zwykle vboxnet0 jeśli jesteś na Ubuntu, jest adapter host-only wykorzystywane do wspierania lokalnych interakcje pomiędzy hostem a VM. W domyślnej konfiguracji Ubuntu jest to sieć 192.168.56.0. Komputer hosta to 192.168.56.1, a maszyna wirtualna zwykle otrzymuje 192.168.56.101 z wbudowanego serwera DHCP VirtualBox. To połączenie jest używane przez system Android Debug Bridge (ADB) do łączenia narzędzi programistycznych z maszyną wirtualną. Na przykład w ten sposób Eclipse ADT i Android Studio mogą komunikować się z maszyną wirtualną w celu instalowania pakietów APK itp. Podczas wykonywania połączenia adb shell łączysz się także przez tę sieć. Jeśli chcesz sprawdzić, jak narzędzia programowe komunikują się z Twoją maszyną wirtualną, przechwyć ją na vboxnet0 (lub jej odpowiednik).

Adapter 2 jest zwykle w NAT do połączenia z siecią usługodawcy hostingowego, zwykle coś podobnego eth0 lub wlan0 na Ubuntu. Umożliwia to dostęp do Internetu dla maszyny wirtualnej. Jeśli chcesz zobaczyć, jak maszyna wirtualna komunikuje się z siecią lokalną lub Internetem, przechwyć ją w stosunku do głównej karty sieciowej hosta. Niestety, gdy VM jest NAT, ruch VM będzie miał ten sam adres IP, co host, co utrudnia filtrowanie. Jeśli to powoduje problem, zamknij maszynę wirtualną, otwórz VirtualBox bezpośrednio (tzn. Bez wyrzutni Genymotion), zmień Adapter 2 na "Bridged Adapter" i wybierz bieżący aktywny adapter hosta w konfiguracji sieci VM. Jeśli twoja lokalna sieć LAN używa DHCP (prawdopodobnie), umożliwi to maszynie wirtualnej uzyskanie własnego adresu IP, który możesz następnie filtrować w Wireshark.Po ponownym uruchomieniu maszyny wirtualnej (z wyrzutni Genymotion) możesz dowiedzieć się, jaki adres został jej przypisany z hostem na numer adb shell ifconfig. Poszukaj eth1, która odpowiada VIrtualBox Adapter 2 (eth0 jest dla połączenia adb przez VirtualBox Adapter 1).

+1

Dziękujemy za opis dotyczący adapterów. Chciałbym uchwycić komunikaty sieciowe VM Andorid, więc na podstawie Twojego komentarza zmieniłem Adapter 2 na Bridged w VirtualBox. Po użyciu Bridged Adapter, Android nie może połączyć się z WiredSSID (bez żadnej nazwy adaptera). – b4l4zs

+0

Czy sieć, której host jest podłączony, używa DHCP? –

+0

Tak, DHCP jest włączony na routerze. – b4l4zs

-1

Jeśli używasz Genymotion, przechwytywanie ruchu między Hostem (to znaczy twoją maszyną) a Guest (tj. Genymotion Emulator) jest bardzo proste.

  1. Jak Gennymotion wykorzystuje VirtualBox stworzyć wirtualne środowisko, można znaleźć vboxnet0 interfejs wymienione w Wireshark, zaznacz go i nagrać cały ruch przepływający pomiędzy gość (Genymotion) i hosta (systemu).

WireShark Interface List

  1. W przypadku jeśli dnt chcesz użyć WireShark do monitorowania ruchu, można również użyć Fiddler i skonfigurować ustawienia serwera proxy w Genymotion (Dodanie kroki Proxy udokumentowane w Genymotion docs) w kierunku Fiddler-running machine IP address and port.

  2. W aplikacji Skrzypek do przechwytywania ruchu ustaw następujące ustawienie: Tools menu > Fiddler Options > Connections i zaznacz opcję Allow Remote Computers to connect box, a następnie uruchom ponownie Skrzypek.

Powiązane problemy