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?
źródło
Odpowiedzi:
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ć
VBoxManage
wiersza polecenia z--nictrace*
opcjami:źródło
tcpdump
wejście do gościa nie przechwytuje ruchu między maszynami wirtualnymi? Nie dbam tak bardzo o stos IP hosta; raczej spodziewam się, że zobaczętcpdump
poprawnie 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?