Перейти к содержимому
Калькуляторы

почему в сенсор попадает не весть трафик?

 

root@servak:~# cat /proc/net/stat/ipt_netflow
Flows: active 4 (peak 67 reached 0d0h10m ago), mem 0K
Hash: size 160000 (mem 625K), metric 1.0, 1.0, 1.0, 1.0. MemTraf: 5918 pkt, 6251 K (pdu 4640, 5026376).
Timeout: active 30, inactive 15. Maxflows 2000000
Rate: 1250072 bits/sec, 145 packets/sec; Avg 1 min: 1370328 bps, 155 pps; 5 min: 1438999 bps, 151 pps
cpu#  stat: <search found new, trunc frag alloc maxflows>, sock: <ok fail cberr, bytes>, traffic: <pkt, bytes>, drop: <pkt, bytes>
Total stat:      2 656656   2532,    0    0    0    0, sock:     88 0 0, 120 K, traffic: 659188, 583 MB, drop: 0, 0 K
cpu0  stat:      2 656416   2512,    0    0    0    0, sock:     88 0 0, 120 K, traffic: 658928, 583 MB, drop: 0, 0 K
cpu1  stat:      0    240     20,    0    0    0    0, sock:      0 0 0, 0 K, traffic: 260, 0 MB, drop: 0, 0 K
sock0: 127.0.0.1:9998, sndbuf 262144, filled 1, peak 1; err: sndbuf reached 0, other 0
root@servak:~# iptables -nvL|grep NETFLOW
659K  613M NETFLOW    all  --  *      *       0.0.0.0/0            0.0.0.0/0           NETFLOW
root@servak:~# uname -a
Linux servak 3.2.0-4-686-pae #1 SMP Debian 3.2.46-1 i686 GNU/Linux
root@servak:~#

Изменено пользователем zakachkin

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

почему в сенсор попадает не весть трафик?

Больше похоже на неаккуратное округление, не?

583 * 1024 * 1024 = 611319808

584 * 1024 * 1024 = 612368384

613 * 1000 * 1000 = 613000000

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

почему в сенсор попадает не весть трафик?

Больше похоже на неаккуратное округление, не?

583 * 1024 * 1024 = 611319808

584 * 1024 * 1024 = 612368384

613 * 1000 * 1000 = 613000000

А что надо подкрутить чтоб было ровное?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А под 3.10 у кого-нибуть получилось собрать?

 

з.ы. Пабидил: в 3.10 немного переделали работу с procfs; мне разбираться лень - просто сделал

#undef CONFIG_PROC_FS

в ipt_NETFLOW.c

Один черт не использовал никогда; с выложенным в теме патчем всё собралось

 

Но может быть кто-то, более шарящий в "ядерной физике" сделает кошерно :)

 

мля, а libipt_netflow так и не собирается ><

Изменено пользователем Wingman

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вобчем, libipt_netflow не собирается со свежими iptables; iptables постарше не собираются со свежими хидерами ядра :) Печалька, как бы автора уговорить пропатчить своё детище)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

ставьте старый проверенный в боях софт :)

 

core ~ # modinfo ipt_NETFLOW
filename:       /lib/modules/3.4.9-gentoo/ipt_netflow/ipt_NETFLOW.ko
version:        1.7.2
...
core ~ # equery u iptables
...
* Found these USE flags for net-firewall/iptables-1.4.13:
...
core ~ # uname -a
Linux core 3.4.9-gentoo #1 SMP Mon Oct 15 12:22:22 MSK 2012 x86_64 Intel(R) Xeon(R) CPU E5504 @ 2.00GHz GenuineIntel GNU/Linux

Изменено пользователем nanaiki

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Мне нужно ведро постарше :) Там много чего подтюнено, например выпилен нахрен роуткеш, который у меня потихоньку начинает переполняться временами)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вобчем, libipt_netflow не собирается со свежими iptables; iptables постарше не собираются со свежими хидерами ядра :) Печалька, как бы автора уговорить пропатчить своё детище)

Все там отлично собирается!

kernel 3.9.11

iptables-1.4.19.1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А с 3.10 попробуйте, если есть возможность

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А с 3.10 попробуйте, если есть возможность

Влом пока 3.10 пилить... вот будет он реально LT, тогда запилим))))

А будет это тогда, когда 3.11 выйдет и 3.10 перевалит за 3.10.10

А пока рано десятку ставить, сырое оно еще)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Linux core 3.4.9-gentoo

 

И не вешалось оно у вас ни разу?

 

Мои наблюдения:

Linux роутеры, netflow, шейпер, ipset/iptables,

500-900мегабит, 70-140кппс

 

20 машин на 3.1.6 все отлично.

Несколько осталось на 3.0.6-gentoo тоже стабильно.

из ядер 3.2.* и 3.4.* осталась только одна на 3.4.38-gentoo, и то потому что техподдержку по телефону не далеко посылать нажимать заветную кнопку ресета.

При больших нагрузках это ядро вообще впадало в странности, посисали отдельные процессы, не говоря уж о IPv4: dst cache overflow..

На 3.7.7-gentoo зависало пару раз, сейчас одна машина на нем осталась

На 3.8.13-gentoo периодически пролетают "INFO: rcu_preempt detected stalls on CPUs/tasks.." в целом работает.

На 3.9.6-gentoo работает одна экспериментальная, замечено снижение нагрузки на cpu.

а вот тут уже netflow что-то редко, но ругается на "netflow_send_pdu[0]: sendmsg error -11: data loss 92 pkt, 8513 bytes: increase sndbuf!"

 

Жду ipt_netflow в 3.10 ибо нужно будет несколько 10g роутеров делать.

Без ipt_netflow на тестах 3.10.4-gentoo, под мои цели там все ок.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

telecom, а какие у вас linux-headers установлены? Что-то у меня не так в консерватории, под gentoo-sources-3.9.11-r1 тоже нихрена не собирается ><

С таким вот выводом: http://ip-home.net/files/make_all.txt

 

p.s. а gcc какой? Я уже в любую блажь готов поверить =)

Изменено пользователем Wingman

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

telecom, а какие у вас linux-headers установлены? Что-то у меня не так в консерватории, под gentoo-sources-3.9.11-r1 тоже нихрена не собирается ><

С таким вот выводом: http://ip-home.net/files/make_all.txt

 

p.s. а gcc какой? Я уже в любую блажь готов поверить =)

у меня на центос, собирается влет, без всяких проблем)

PS

Мы сабж вкрячили в SRPM-ки с ядром и с iptabless. Он собирается вместе с ядром, более того монолитно, а не в виде модуля. Т.е. один раз компилим, получаем rpm-ки ядра и iptabless с уже впиленным сабжем, как с родным. Потом заливаем их на сколь угодное кол. серверов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Омфг.

Только сейчас я понял, что на кнопке "download" на sf.net висит 1.7.что-то-там, а 1.8 - в гите :)

 

+ что-то сломали в хидерах ядра в генте. Фиксится указанием ./configure --kdir=/usr/src/linux/arch/x86, ну либо в мейкфайле руками поправить

Ура, в общем :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

О, быстренько.

http://sourceforge.net/p/ipt-netflow/bugs-requests-patches/71/

ipt_netfilter-3.10-procfs-fix.patch

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Приветствую!

 

Стоит Debain 6.0 с iptables используется сугубо как роутер. Собрал ipt_netflow, добавил правила, все добавилось:

iptables -L -v -n

Chain INPUT (policy ACCEPT 13538 packets, 1315K bytes)

pkts bytes target prot opt in out source destination

23907 2309K NETFLOW all -- * * 0.0.0.0/0 0.0.0.0/0 NETFLOW

 

Chain FORWARD (policy ACCEPT 397 packets, 16820 bytes)

pkts bytes target prot opt in out source destination

8042M 4070G ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate RELATED,ESTABLISHED

522M 41G ACCEPT all -- eth0 * <скрыто>/24 0.0.0.0/0 ctstate NEW

849 35748 NETFLOW all -- * * 0.0.0.0/0 0.0.0.0/0 NETFLOW

 

Chain OUTPUT (policy ACCEPT 11575 packets, 1323K bytes)

pkts bytes target prot opt in out source destination

20263 2346K NETFLOW all -- * * 0.0.0.0/0 0.0.0.0/0 NETFLOW

 

Создал файл в modprobe.d, указал destination 127.0.0.1 9996 порт, tcpdump все видит:

 

tcpdump -i lo port 9996

tcpdump: verbose output suppressed, use -v or -vv for full protocol decode

listening on lo, link-type EN10MB (Ethernet), capture size 65535 bytes

12:12:22.015238 IP localhost.37715 > localhost.9996: UDP, length 1464

12:12:22.615364 IP localhost.37715 > localhost.9996: UDP, length 1464

12:12:23.115116 IP localhost.37715 > localhost.9996: UDP, length 1464

12:12:23.715096 IP localhost.37715 > localhost.9996: UDP, length 1464

12:12:24.119151 IP localhost.37715 > localhost.9996: UDP, length 1464

12:12:24.819199 IP localhost.37715 > localhost.9996: UDP, length 1464

12:12:25.419114 IP localhost.37715 > localhost.9996: UDP, length 1464

12:12:26.219163 IP localhost.37715 > localhost.9996: UDP, length 1464

 

 

Собираю на той же ос с ncapd и читаю с nfdump.

 

Может у меня руки кривые, но я пробовал:

 

nfdump -R /var/netflow/ -s record -n 10

nfdump -R /var/netflow/$TODAY -s record -n 10

nfdump -R /var/netflow/$YESTURDAY -s record -n 10

 

Результаты одни и те же. При этом nfdump показывает максимальный трафик с одного хоста 12000 байт, а snmp показывает, что прошло минимум 30Гб за один день, в чем блин косяк?:(

Изменено пользователем r1sh

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

нужный трафик то в цепочку NETFLOW зарулить забыли?

FORWARD переводим в политику дроп, в нем заруливаем в нетфлоу и ассептим

предлагаю создать табличку netflow в нее зарулить тех кого нужно общитывать, в ней нечто типа

iptables -A netflow -j NETFLOW

iptables -A netflow -j ACCEPT

 

а сейчас у вас первые два правила не дают пекетам шанса попасть в NETFLOW

8042M 4070G ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate RELATED,ESTABLISHED

522M 41G ACCEPT all -- eth0 * <скрыто>/24 0.0.0.0/0 ctstate NEW

849 35748 NETFLOW all -- * * 0.0.0.0/0 0.0.0.0/0 NETFLOW

Изменено пользователем Tamahome

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Результаты одни и те же. При этом nfdump показывает максимальный трафик с одного хоста 12000 байт, а snmp показывает, что прошло минимум 30Гб за один день, в чем блин косяк?:(

Какие-то странные у вас правила в iptables: до netflow в цепочке FORWARD мало что доходит. Определитесь, что именно хотите считать. Сейчас вы считаете только исходящий-входящий трафик непосредственно на сам маршрутизатор, плюс совсем немного транзитного трафика.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Какие-то странные у вас правила в iptables: до netflow в цепочке FORWARD мало что доходит. Определитесь, что именно хотите считать. Сейчас вы считаете только исходящий-входящий трафик непосредственно на сам маршрутизатор, плюс совсем немного транзитного трафика.

 

считать хочу весь трафик проходящий через роутер.

 

ужный трафик то в цепочку NETFLOW зарулить забыли?

FORWARD переводим в политику дроп, в нем заруливаем в нетфлоу и ассептим

предлагаю создать табличку netflow в нее зарулить тех кого нужно общитывать, в ней нечто типа

iptables -A netflow -j NETFLOW

iptables -A netflow -j ACCEPT

 

а сейчас у вас первые два правила не дают пекетам шанса попасть в NETFLOW

8042M 4070G ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate RELATED,ESTABLISHED

522M 41G ACCEPT all -- eth0 * <скрыто>/24 0.0.0.0/0 ctstate NEW

849 35748 NETFLOW all -- * * 0.0.0.0/0 0.0.0.0/0 NETFLOW

 

супер, спасибо за совет!) чесно признаюсь, с iptablesz я мало работал, больше с цисками и vyatta которая тоже на дебиане но cli по типу циски.

 

как я понимаю, пакет в любом случае проходит по всей цепочки правил, пока не встретит правило ACCEPT или REJECT, не останавливаяс на первом совпадении, по этому я не могу понять, в чем разница: поднять правило iptables -A FORWARD -j NETFLOW на 1е место в цепочке FORWARD или создать свою цепочку и сделать как вы описали?

Изменено пользователем r1sh

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

r1sh, можно и просто передвинуть на первое место, если все-равно считать все.

Но если честно, я не могу понять для какой цели у вас такие правила.

 

А проходит не по всей, а до первого ACCEPT/DROP/REJECT..

Изменено пользователем Tamahome

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

честно скажу, пришел, увидел этот шлюз и пока его только разбираю что зачем и почему, решил начать с snmp: общую нагрузку и трафик, увидел скачки трафика, решил посмотреть через netflow а потом буду правила под трафик подстраивать: общие используемые порты, протоколы и тд

 

мне же для того чтобы использовать созданную цепочку в любом случае нужно ее добавить в цепочку FORWARD

Изменено пользователем r1sh

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Доброго утра!

 

Может быть пригодится кому-нибудь. Собрал ipt_NETFLOW для Vyatta.

http://umraf.blogspot.ru/2013/08/iptnetflow-vyatta.html#more

 

Текущую версию для Vyatta VC6.6R1 под нагрузкой не тестировал. До этого собирал для VC6.3, работает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Доброго утра!

 

Может быть пригодится кому-нибудь. Собрал ipt_NETFLOW для Vyatta.

http://umraf.blogspo...yatta.html#more

 

Текущую версию для Vyatta VC6.6R1 под нагрузкой не тестировал. До этого собирал для VC6.3, работает.

 

у виатты же и так есть netflow сенсор ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Скрипт агрегации выпадает с ошибкой:

/usr/bin/nfdump -R ./gw1/2013/08/01 -bzw ./gw1.log/2013/08/nfcapd.2013.08.01 not (proto icmp and packets LT 4)

 

malloc() error in nflowcache.c line 254: Cannot allocate memory

 

Никакого криминала нет, агрегируемый трафик вырос с 2,7 Гига до 3,3 суточно. В чем дело?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Безотносительно nfdump это означает, что программа не может выделить память в куче, а значит либо исчерпалась свободная память на машине, либо программа уперлась в лимиты(что более вероятно, см. ulimit и cgroups).

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.