Трафік між гостями VirtualBox не відображається в tcpdump


9

У мене встановлено тестове середовище з чотирма гостями VirtualBox під керуванням CentOS 6. У кожного є один мережевий пристрій, приєднаний до мостового адаптера, який є моїм основним мережевим з'єднанням на моєму ПК, зі статичною IP-адресою (починаючи від 192.168.2.95-98) будь-яким пристроєм у моїй мережі.

Іноді мені потрібно вміти аналізувати пакети з тих чи інших причин. Спочатку я просто SSH'ed у свій маршрутизатор і використовував tcpdump для збору всіх пакетів від гостей. Ну, це працює не так, як планувалося ...

Єдині пакети, які з’являються за допомогою tcpdump, - це трафік між 98 та іншими пристроями в моїй мережі, крім гостей. 98 - єдиний гість, який спілкується з іншими пристроями в моїй мережі (крім трафіку SSH); решта спілкується з іншими гостями.

Я почав фільтрувати tcpdump за хостом для кожної IP-адреси гостя. Я в кінцевому підсумку знімав це аж до скидання всього . Оскільки всі пакети проходять через мережевий адаптер на моєму ПК, я захопив усі пакети для цієї картки, все ще не маючи успіху!

VirtualBox обробляє, впорскує та видаляє пакети на адаптері при використанні мостових мереж. Якщо пакет повинен перейти до іншого гостя, чи зберігає VirtualBox пакет і пересилає його до відповідного гостя? Якщо так, то як я можу захопити ці пакети?


Яка ОС - ваш головний комп'ютер?
важкий

І чи показує tcpdump (або інший sniffer пакетів) на вашому хості якийсь трафік? Я б здогадувався, що ваша хост OS / VirtualBox досить розумний, щоб насправді не надсилати пакети на ваш маршрутизатор, аби вони повернулися прямо в той же інтерфейс.
Гойю

@heavyd - це Windows 7.
Логан Біббі

@Goyuix - тому я захопив усі пакети на картці. Він показує те саме, що і дамп з мого маршрутизатора. Якщо він зберігає пакети, де їх можна знайти?
Логан Біббі

Відповіді:


6

Під час використання мостового режиму мереж VirtualBox VirtualBox діє як віртуальний перемикач між фізичним інтерфейсом вашого хост-комп'ютера та віртуальною мережею. Пакети, що подорожують між комп'ютерами у віртуальній мережі, ніколи не потрапляють до точки в стеці мережевого хоста, де tcpdump може забрати їх, тому ви не можете бачити цей трафік від хоста.

Ви можете спробувати використати вбудовану функцію відстеження мережі VirtualBox . Це інструмент налагодження, але він генерує файли pcap і вбудований у просту настройку. Щоб увімкнути мережеве відстеження, ви можете скористатися VBoxManageкомандним рядком з --nictrace*параметрами:

VBoxManage modifyvm [your-vm] --nictrace[adapter-number] on --nictracefile[adapter-number] file.pcap

Спробував це, і це спрацювало як шарм. Це все, що мені потрібно! Я б хотів, щоб я міг подати цю заяву 10 разів ... Ви поняття не маєте, як довго це питання мене мучить.
Логан Біббі

1
Будь-яка ідея, чому tcpdump-ing всередині гостя не захоплює трафік VM-VM? Мене не так хвилює стек IP хостів; швидше я очікував би побачити tcpdumpзапуск у гостьовій ОС правильно. На перший погляд, це є розумним очікуванням, оскільки стек гостьової мережі, мабуть, повинен працювати як завжди. Отже, що не так?
улідко

@ulidtko я рекомендую створити нове запитання з вашими конкретними деталями, включаючи ОС, версії та конфігурації мережі.
важкий
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.