Ruch między gośćmi VirtualBox nie pojawia się w tcpdump

9

Mam konfigurację środowiska testowego z 4 gośćmi VirtualBox z systemem CentOS 6. Każde z nich ma jedno urządzenie sieciowe podłączone do zmostkowanej karty, która jest moim podstawowym połączeniem sieciowym na moim komputerze PC, z dostępnym statycznym adresem IP (od 192.168.2.95-98) przez dowolne urządzenie w mojej sieci.

Czasami muszę być w stanie analizować pakiety z tego czy innego powodu. Na początku po prostu połączyłem SSH z routerem i użyłem tcpdump do przechwycenia wszystkich pakietów od gości. Cóż, to nie działa zgodnie z planem ...

Jedynymi pakietami wyświetlanymi za pomocą tcpdump jest ruch między 98 a innymi urządzeniami w mojej sieci oprócz gości. 98 jest jedynym gościem, który komunikuje się z innymi urządzeniami w mojej sieci (oprócz ruchu SSH); reszta komunikuje się z innymi gośćmi.

Zacząłem filtrować tcpdump według hosta dla każdego adresu IP gościa. Skończyło się na tym, że rozebrałem to wszystko do zrzucenia wszystkiego . Ponieważ wszystkie pakiety przechodzą przez kartę sieciową na moim komputerze, przechwyciłem wszystkie pakiety dla tej karty bez powodzenia!

VirtualBox modyfikuje, wstrzykuje i usuwa pakiety z adaptera podczas korzystania z mostkowanej sieci. Jeśli pakiet ma przejść do innego gościa, czy VirtualBox zachowuje pakiet i przekazuje go do odpowiedniego gościa? Jeśli tak, jak mogę przechwycić te pakiety?

Logan Bibby
źródło
Jaki system operacyjny jest twoim komputerem?
heavyd
I czy tcpdump (lub inny sniffer pakietów) na twoim hoście pokazuje jakiś ruch? Domyślam się, że Twój system operacyjny / VirtualBox są wystarczająco inteligentne, aby nie wysyłać pakietów do routera, tylko po to, aby powróciły na tym samym interfejsie.
Goyuix,
@heavyd - to Windows 7.
Logan Bibby
@Goyuix - Właśnie dlatego przechwyciłem wszystkie pakiety na karcie. Pokazuje to samo, co zrzut z mojego routera. Jeśli zachowuje pakiety, to gdzie mogę je znaleźć?
Logan Bibby

Odpowiedzi:

6

Podczas korzystania z trybu mostkowania sieci VirtualBox VirtualBox działa jak wirtualne przełączanie między fizycznym interfejsem komputera hosta a siecią wirtualną. Pakiety podróżujące między komputerami w sieci wirtualnej nigdy nie docierają do punktu na stosie sieci hosta, w którym tcpdump może je odebrać, więc nie widać ruchu z hosta.

Możesz spróbować użyć wbudowanej funkcji śledzenia sieci VirtualBox . To narzędzie do debugowania, ale generuje pliki pcap i jest łatwe w konfiguracji. Aby włączyć śledzenie sieci, możesz użyć VBoxManagewiersza polecenia z --nictrace*opcjami:

VBoxManage modifyvm [your-vm] --nictrace[adapter-number] on --nictracefile[adapter-number] file.pcap
ciężki
źródło
Wypróbowałem to i działało jak urok. To wszystko, czego potrzebowałem! Chciałbym móc wypowiedzieć się na ten temat 10 razy ... Nie masz pojęcia, jak długo ten problem mnie męczy.
Logan Bibby
1
Wiesz, dlaczego tcpdumpwejście do gościa nie przechwytuje ruchu między maszynami wirtualnymi? Nie dbam tak bardzo o stos IP hosta; raczej spodziewam się, że zobaczę tcpdumppoprawnie działający system operacyjny gościa. Z pozoru jest to rozsądne oczekiwanie, ponieważ stos sieci gości powinien prawdopodobnie działać jak zwykle. Co jest nie tak?
ulidtko
@ulidtko Polecam utworzenie nowego pytania zawierającego szczegółowe informacje, w tym systemy operacyjne, wersje i konfiguracje sieciowe.
ciężki