Jump to content
Калькуляторы

Доброго времени суток!

Появилась необходимость слать потоки разных версий netflow: 5 и 9? Это возможно как-то настроить?

Наверное, через установку ещё одного модуля с другим именем?

Share this post


Link to post
Share on other sites

Здравствуйте.

Можно ли заставить работать модуль ipt-netflow под nftables ?

Пора уже начать осваивать nftables. Навскидку выглядит неплохо.

Share this post


Link to post
Share on other sites

"выглядит неплохо" не самый сильный аргумент за то, чтобы ломать и переделывать достаточно стабильный модуль.

Share this post


Link to post
Share on other sites

Можно ли заставить работать модуль ipt-netflow под nftables ?

В nftables нет поддержки модулей.

Share this post


Link to post
Share on other sites

как реализовать схему?

С одной машины:

в один коллектор отдавать v5

в другой коллектор отдавать v9

Share this post


Link to post
Share on other sites

Люди добрые, ветку прочитал, но подскажите как тюнить ipt_NETFLOW (без натевентс)?

В документации параметры описаны подробно как настраивать, но ничего нет о том, что они означают.

Интересуют скорости 10Г и больше. Сейчас на моем сервере это самый жрущий процесс, естественно он сидит на одном процессоре, сендер видимо.

стата:

Flows: active 249751 (peak 250864 reached 0d0h0m ago), mem 55407K, worker delay 30/1000 [30..100] (21 ms, 0 us, 359:0 0 [cpu2]).

Hash: size 2097152 (mem 16384K), metric 1.06 [1.02, 1.00, 1.00]. InHash: 61735594 pkt, 68411103 K, InPDU 427, 413759.

Rate: 2974108518 bits/sec, 317127 packets/sec; Avg 1 min: 2947243075 bps, 314958 pps; 5 min: 2379479772 bps, 255645 pps

cpu# pps; <search found new [metric], trunc frag alloc maxflows>, traffic: <pkt, bytes>, drop: <pkt, bytes>

Total 317122; 5777961 84902045 985826 [1.06], 0 0 0 0, traffic: 85887871, 95015 MB, drop: 0, 0 K

cpu0 22799; 443519 6462857 85099 [1.02], 0 0 0 0, traffic: 6547956, 7040 MB, drop: 0, 0 K

cpu1 24556; 523816 6711940 85676 [1.05], 0 0 0 0, traffic: 6797616, 7520 MB, drop: 0, 0 K

cpu2 24930; 363336 6444002 80556 [1.03], 0 0 0 0, traffic: 6524558, 6597 MB, drop: 0, 0 K

cpu3 25322; 404957 7912739 80706 [1.02], 0 0 0 0, traffic: 7993445, 9436 MB, drop: 0, 0 K

cpu4 23348; 299822 6653466 81720 [1.01], 0 0 0 0, traffic: 6735186, 7238 MB, drop: 0, 0 K

cpu5 25581; 551247 6884774 81193 [1.07], 0 0 0 0, traffic: 6965967, 7900 MB, drop: 0, 0 K

cpu6 26801; 378480 6856966 84374 [1.03], 0 0 0 0, traffic: 6941340, 7484 MB, drop: 0, 0 K

cpu7 29716; 362770 7155102 83164 [1.02], 0 0 0 0, traffic: 7238266, 7975 MB, drop: 0, 0 K

cpu8 32271; 672805 7595261 81377 [1.04], 0 0 0 0, traffic: 7676638, 8409 MB, drop: 0, 0 K

cpu9 25130; 494106 6624542 79212 [1.05], 0 0 0 0, traffic: 6703754, 7186 MB, drop: 0, 0 K

cpu10 29076; 788791 8295171 81998 [1.06], 0 0 0 0, traffic: 8377169, 9820 MB, drop: 0, 0 K

cpu11 27592; 494319 7305257 80751 [1.03], 0 0 0 0, traffic: 7386008, 8406 MB, drop: 0, 0 K

Export: Rate 155550 bytes/s; Total 24535 pkts, 34 MB, 736050 flows; Errors 0 pkts; Traffic lost 0 pkts, 0 Kbytes, 0 flows.

sock0: 10.ччччч:9993, sndbuf 212992, filled 1, peak 13825; err: sndbuf reached 0, connect 0, cberr 0, other 0

Edited by nshut

Share this post


Link to post
Share on other sites
Сейчас на моем сервере это самый жрущий процесс, естественно он сидит на одном процессоре, сендер видимо.

net.netflow.scan-min = 25

Share this post


Link to post
Share on other sites

net.netflow.scan-min = 25

очень информативно...

у меня было 1, делал 10,20,30,100.

меня интересуют все параметры, в том числе sample hash и буфер send что помогут произодительности. тыкать разные валуе в настройки я пробовал, поэтому и прошу пояснить что на что влияет. Пока у меня идея вынести его на отдельное ядро, отдельно от очередей

Share this post


Link to post
Share on other sites

net.netflow.scan-min = 25

очень информативно...

у меня было 1, делал 10,20,30,100.

меня интересуют все параметры, в том числе sample hash и буфер send что помогут произодительности. тыкать разные валуе в настройки я пробовал, поэтому и прошу пояснить что на что влияет. Пока у меня идея вынести его на отдельное ядро, отдельно от очередей

вы спрашивали, как снизить нагрузку от экспортера. по умолчанию там 1, что значит сканировать HZ раз в секунду. на больших объемах и больших HZ это дает сильную нагрузку на ядро (в вашем случае, cpu2, очевидно), к которому биндится экспортер. суть моего предложения в том, чтобы уменьшить число сканирований в секунду (максимум, чего можно добиться - это 10 раз в секунду)

 

кстати, я не посмотрел на вашу статистику, когда отвечал. вам нужно поставить 100. 25 это было для моего случая, у меня "worker delay 25/250 [25..25]".

 

можно и на отдельное ядро вынести, с помощью "echo number > /sys/module/ipt_NETFLOW/parameters/exportcpu", если не хотите, чтобы экспорт мешал обработке трафика.

 

вообще все параметры описаны тут: https://github.com/aabc/ipt-netflow с объяснением что на что влияет.

 

"sample hash" - такой опции нет. есть опция sampler, но она актуальна только если вы используете flow sampling. размер sndbuf подберите по месту (в документации написано, как читать статистику), но если статистика, которую вы привели, актуальна, то необходимости в увеличении размера буфера нет: "peak 13825" при объеме "sndbuf 212992"

Share this post


Link to post
Share on other sites

вообще все параметры описаны тут: https://github.com/aabc/ipt-netflow с объяснением что на что влияет.

во первых спасибо за разъяснения.

документацию конечно читал, но или английский слаб или не понимаю просто.

только если вы используете flow sampling

к примеру, я не использую, но так и не понял надо ли использовать. Задача: трафик > 10G, подсчет байтов скачанных пока обязателен. На данную задачу необходимы оптимальные параметры. Т.е. если надо использовать для производительности, то я буду. У меня задача оптимизировать максимально, а я туповат :) чтобы понять что делает sampler. На пальцах может кто объяснить зачем он? понятия хашь и рандом я сам знаю, мне цель этого сэмплера не известна

Share this post


Link to post
Share on other sites

к примеру, я не использую, но так и не понял надо ли использовать.

не надо использовать. это не для подсчета трафика, а для его анализа

Share this post


Link to post
Share on other sites

Добрый день всем.

Коллеги,что мог пропустить:

собрал ipt_NETFLOW с --enable-natevents

Ядро 4.9.11-un-def-alt0.M80P.1 (проверить данный функционал решил на домашнем роутере).

загрузил модуль, выставил net.netflow.natevents = 1

Что-то в netflow Сыпится, но при просмотре в wireshark не видно ничего интересно , хотя ожидал увидеть NAT Events.

В каких либо ошибок тоже не видно

 

[106838.000239] ipt_NETFLOW: connected 127.0.0.1:9996

[106838.000241] ipt_NETFLOW: added destination 127.0.0.1:9996

[106838.000243] ipt_NETFLOW protocol version 9 (NetFlow) enabled.

[106838.000246] ipt_NETFLOW is loaded.

[106838.107878] netflow_sendmsg: sendmsg(0, 800) [1 212992]

[106867.796749] ipt_NETFLOW: enable natevents.

[106898.114837] netflow_sendmsg: sendmsg(0, 282) [1 212992]

[106926.722377] netflow_sendmsg: sendmsg(0, 92) [1 212992]

 

zcat /proc/config.gz | grep CONFIG_NF_CONNTRACK_EVENTS

CONFIG_NF_CONNTRACK_EVENTS=y

orig6.png

Share this post


Link to post
Share on other sites

А вот что интересно -запустил nfdump.. Он таки поймал потк и вполне себе показал NAT events

Share this post


Link to post
Share on other sites

Нужно дольше снифать. Написано же no templates found

Share this post


Link to post
Share on other sites

Добрый день. Возможно вопрос странный и поднимет старую тему но столкнулся с проблемой у nfcapd.

Собираю по netflow статистику nat трансляций и наткнулся на беду рассматриваемую еще в 14 или 13 году.

Дата записывается вида 1970-01-01 03:00:00.000

Система с коллектором FreeBSD 11.1, nfcapd 1.6.15. Источник данных asr 1006. При этом в tcpdump я вижу дату и время, но вот в nfcapd только 0.

Может кто подскажет куда копать ?

Share this post


Link to post
Share on other sites

Уважаемый aabc , можете ли Вы оценить объем работ для добавления в модуль (netflow v9) функционала заполнения полей SRC_AS, DST_AS. Как вариант - https://github.com/JackSlateur/perl-ip2as.

Я готов материально поучаствовать.

Share this post


Link to post
Share on other sites

@Susanin ipt-netflow экспортирует информацию, которая есть в ядре. Номеров AS там нет.

 

(FYI Ранее был сторонний патч к quagga, который помещал AS в маршрут в поле realm, но он давно заброшен.)

 

Вы могли бы закодить netflow proxy (полностью в userspace), который бы добавлял к flows номера AS. Минус такого метода, что AS бы не попадала во flow key (кому-то это может было бы нужно, кому-то нет).

 

Как-то внедрять в ядро информацию никак не влияющую на роутинг (и не актуальную в каждый момент) в статистику, которая, подразумевается, что она от роутинга, с моей точки зрения, было бы странно.

Share this post


Link to post
Share on other sites

Я как пользователь Fastnetmon Advanced использую то, что он умеет заполнять AS, даже если коллектор не умеет.

Впихивать в ядерный модуль такой функционал - совершенно неразумно.

Share this post


Link to post
Share on other sites

@nuclearcat Извините за оффтоп, а Community версия умеет строить графики по top-10 ASN, без информации об AS в netflow9 ?

Я именно этот функционал ищу...

Share this post


Link to post
Share on other sites
On 11.01.2018 at 1:01 PM, aabc said:

ipt-netflow экспортирует информацию, которая есть в ядре. Номеров AS там нет.

Не знаю точно, но вроде как в ipfix  есть домен, у вас его нету вроде .

тут понадобилось у нас в Беларуси добавили, что и домен хранить нужно :(

Можете добавить?

 

Edited by banec

Share this post


Link to post
Share on other sites
13 minutes ago, banec said:

... вроде как в ipfix  есть домен, у вас его нету вроде . тут понадобилось у нас в Беларуси добавили, что и домен хранить нужно :( Можете добавить?

 

Он есть. https://github.com/aabc/ipt-netflow/blob/master/README#L582

Share this post


Link to post
Share on other sites

по умолчанию выключен :)

echo number > /sys/module/ipt_NETFLOW/parameters/engine_id

как я понял 32 или 8 вместо number  - в зависимости от коллектора?

 

Share this post


Link to post
Share on other sites
13 minutes ago, banec said:

по умолчанию выключен :)

echo number > /sys/module/ipt_NETFLOW/parameters/engine_id

как я понял 32 или 8 вместо number  - в зависимости от коллектора?

 

По-умолчанию он не выключен, а равен 0. Если у вас один экспортер, то так и оставьте. Если несколько, то сделайте им номера по порядку.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now