Мне нужно захватывать трафик на сервере CentOS 5, который действует как веб-прокси с 2 интерфейсами wan и 1 локальной сетью. Для устранения странной проблемы с прокси я хотел бы получить полный разговор. Поскольку внешние соединения сбалансированы между двумя интерфейсами WAN, мне интересно, возможно ли захватывать одновременно на всех интерфейсах.
Я использовал tcpdump ранее, но он допускает только один интерфейс одновременно. Я могу запустить 3 параллельных процесса для захвата на всех интерфейсах, но затем получаю 3 разных файла захвата.
Как правильно это сделать?
wireshark
тоже можете использовать .Ответы:
Согласно справочной странице tcpdump:
В системах Linux с ядром 2.2 или более поздней версии интерфейсный аргумент '' any '' может использоваться для захвата пакетов со всех интерфейсов. Обратите внимание, что захват на любом устройстве не будет выполняться в случайном режиме.
Таким образом, вы должны быть в состоянии выполнить:
tcpdump -i any
чтобы собрать данные на всех интерфейсах одновременно в один файл захвата.источник
Я бы подошел к этому, чтобы сбросить на каждом интерфейсе отдельный файл и затем объединить их. Любой интерфейс также включает в себя трафик, который может загрязнять захват.
Это также позволяет анализировать потоки пакетов на интерфейс без сложной фильтрации.
Я бы запечатлел в 3 терминалах или используя команду & &
Флаги -nn отключают разрешение dns для скорости, -s 0 сохраняет полный пакет и -w записывает в файл.
Затем я бы слил файлы командой mergecap из wireshark:
источник
Для захвата tcpdump на всех интерфейсах используйте
источник