megahertz0 Posted June 21, 2018 · Report post Привет! Возникла тут задача захвата трафика с 10G интерфейсов + немного capture filter чтобы на винт писать только то, что нужно. Реально ли такие объемы захватывать через tcpdump на линуксовом тазике с X520 и каким-нибудь не сильно древним ксеоном типа E56xx? Просто очень смущает возможность дропов и, соответственно, кривости дампа трафика. А готовой альтернативы tcpdump я не нашел. Все или в виде proof of concept или давно заброшено. Share this post Link to post Share on other sites
Ivan_83 Posted June 21, 2018 · Report post netmap, DPDK, PF_RING тебе в помощь. Насчёт tcpdump - наверное, но фильтры нужно скармливать ему и объёмы на выходе из ядра должны быть не слишком большими. Share this post Link to post Share on other sites
Tosha Posted June 21, 2018 · Report post Имхо tcpdump не вариант. Только для кратковременных тестов и отладки. "Яровую" делать собираетесь? Share this post Link to post Share on other sites
NewUse Posted June 21, 2018 · Report post имхо, филььровать отдельно, точнее зеркалировать нужное на железе, а дальше писать всё подряд... чем-то сильно низкоуровннвым, да и то, не очень представляю, как это сделать и диски какие нужны, чтоб писать на такой скоррсти... https://kukuruku.co/post/capturing-packets-in-linux-at-a-speed-of-millions-of-packets-per-second-without-using-third-party-libraries/ Share this post Link to post Share on other sites
megahertz0 Posted June 21, 2018 · Report post 2 часа назад, Tosha сказал: "Яровую" делать собираетесь? К счастью пока нет. Решаем тут задачу организации СОРМа нижестоящего провайдера. Надо на этапе реализации заглядывать в трафик, летящий в съемник с целью узнать все ли до него доходит. 2 часа назад, NewUse сказал: имхо, филььровать отдельно, точнее зеркалировать нужное на железе, а дальше писать всё подряд... чем-то сильно низкоуровннвым, да и то, не очень представляю, как это сделать и диски какие нужны, чтоб писать на такой скоррсти... Реально трафика в десятке не в потолок же. Там от силы гигов 6-7. И из этого потока мне, к примеру, нужно выдернуть radius и сохранить на винт чтобы вайршарком посмотреть что там. Так что писать не так уж и много, обычный ssd справится. Железом можно фильтровать конечно. Но там не так уж и много возможностей. Тем более фильтры на том же 6500 работают для span на ingress. А мне трафик уже приходит, так что вариант фильтровать только на зонде, который захватывает трафик. Share this post Link to post Share on other sites
NewUse Posted June 21, 2018 · Report post ну если радиус Ваш, то проще через radius-proxy или фаерволом на худой конец что-то фильтровать.... ну с радиусом скорее всего и tcpdump справится... тоже в тему, но всё ручками: https://jvns.ca/blog/2017/04/07/xdp-bpf-tutorial/ Share this post Link to post Share on other sites
pavel.odintsov Posted June 23, 2018 · Report post Могу рекомендовать свою же статью https://habr.com/post/261161/ :) Share this post Link to post Share on other sites
sdy_moscow Posted June 23, 2018 · Report post 10 часов назад, pavel.odintsov сказал: Могу рекомендовать свою же статью https://habr.com/post/261161/ :) Спасибо, с интересом прочитал. Share this post Link to post Share on other sites
pavel.odintsov Posted June 24, 2018 · Report post Рад что пригодилось :) Share this post Link to post Share on other sites