pavel.odintsov Posted June 27, 2012 Posted June 27, 2012 Добрый день! Имеется крайне неприятная проблема c Debian 6 + 2.6.32 + ipt_NETFLOW 1.7.1. Итак, на порту (никаких vlan'ов, транков, это просто обычный гигабитный линк), который уходит на аплинка (свич: D-Link DGS-3120) включен мирроринг TX и RX на отдельный порт свича, к которому подключена машина, которая должна считать входящий и исходящий трафика по данному порту. Далее имеется два варианта, чтобы получить данные о прходящем по зеркальному линку трафике: собрать на этой машине аналог хаба (бридж с отключенным изучением маков) либо пропатчить ядро, после чего все пакеты, предназначенные не данной машине полетят в raw цепочку iptables. Коротко описание конфигурации: eth2 - интерфейс, который подключен к порту, на который миррорится трафик, eth1 - линк, по которому машина-коллектор получает свой интернет. Вариант 1 - сборка бриджа: auto br0 iface br0 inet static bridge_ports eth2 dummy0 # делаем из свича - хаб # brctl setageing br0 0 bridge_ageing 0 pre-up /sbin/ifconfig eth2 promisc post-down /sbin/ifconfig eth2 -promisc address 192.168.1.0 netmask 255.255.255.0 iptables: iptables -I FORWARD -i br0 -j NETFLOW Вариант 2 (патч ядра из комплекта ipt_NETFLOW): iptables -A PREROUTING -t raw -i eth2 -j NETFLOW В обоих случаях долетали до цепочки -J NETFLOW только RX пакеты (то есть те, что шли от аплинка к моему роутеру), но TX пакетов не видно в упор. Но при этом, в tcpdump/ettercap я их отлично вижу и на интерфейсе счетчик пакетов очень живенько крутится, то есть, до сетевой они долетают, а вот далее - где-то теряются. Пробелмы с сетевыми также исключаются, стоят неплохие 82574L, перегрузка которых на тестовом потоке в 10-20 мегабит исключается. Вопрос - кто как борется с такой проблемой и как считает вот такой проходящий трафик на миррор порту? Рассматриваются любые варианты вплоть до установки FreeBSD. Вставить ник Quote
Stranix1979 Posted June 27, 2012 Posted June 27, 2012 Доброе время суток ! Пропуск трафика не забыли включить ? /etc/sysctl.conf: net.ipv4.ip_forward = 1 А также нужно сделать: iptables: iptables -I FORWARD -i br0 -j NETFLOW iptables -I FORWARD 2 -i br0 -j DROP По крайней мере, в таком варианте у меня все работает. Считается и TX и RX трафик. Да еще и через bonding. Вставить ник Quote
pavel.odintsov Posted June 27, 2012 Author Posted June 27, 2012 Stranix1979, все это имется, кроме этого дергали rp_filter, пытались отключать arp итд итп - нету TX трафика и все. Вставить ник Quote
pavel.odintsov Posted June 27, 2012 Author Posted June 27, 2012 Дошел до асбурда, сделал точь-в-точь тоже самое, но на CentOS 6 (собрал бридж, как указано выше) и снова вижу лишь RX пакеты, TX - мертво, светятся только в tcpdump. Вставить ник Quote
pavel.odintsov Posted June 27, 2012 Author Posted June 27, 2012 Проблема решена, чуть попозже опубликую отчет. А пока - лучи ненависти инженерам D-link. Вставить ник Quote
Jugernault Posted June 27, 2012 Posted June 27, 2012 Проблема решена, чуть попозже опубликую отчет. А пока - лучи ненависти инженерам D-link. Что? - Миррорит толькот входящий? Вставить ник Quote
pavel.odintsov Posted June 27, 2012 Author Posted June 27, 2012 (edited) Проблема решена, чуть попозже опубликую отчет. А пока - лучи ненависти инженерам D-link. Что? - Миррорит толькот входящий? Все намного хуже, свич DGS-3120 забывает снимать теги 802.1q с исходящего трафика при зеркалировании нетегированного порта. То есть, при зеркалировании на нетегированном порту, входящем во vlan100, трафик входящий идет без тегов, а вот исходящий с тегами, поэтому его и не видела система. Подозреваю, что это точно баг, иначе это бред какой-то, честное слово. Сейчас соберусь силами и напишу на forum.dlink.ru багрепорт. Edited June 27, 2012 by pavel.odintsov Вставить ник Quote
pavel.odintsov Posted June 27, 2012 Author Posted June 27, 2012 Вот описание проблемы на форуме D-Link: http://forum.dlink.ru/viewtopic.php?f=2&t=153547 Вставить ник Quote
ThreeDHead Posted June 28, 2012 Posted June 28, 2012 Было такое, именно с длинком, одно направление миррорится без тега, второе с тегом. Поднимаем на интерфейсе дебиана вилан с этим тегом и все в порядке. Вставить ник Quote
pavel.odintsov Posted June 28, 2012 Author Posted June 28, 2012 Было такое, именно с длинком, одно направление миррорится без тега, второе с тегом. Поднимаем на интерфейсе дебиана вилан с этим тегом и все в порядке. Так и победили, ребята с D-Link подтвердили, что это фича-баг именно чипа, а не прошивки :( Вставить ник Quote
msdt Posted September 22, 2016 Posted September 22, 2016 Если бы только D-Link'и. На свичах Juniper (EX4200, EX2200, EX3300) все также, поэтому делать мирроринг с акцессных и транковых портов одновременно бывает проблематично. Было такое, именно с длинком, одно направление миррорится без тега, второе с тегом. Поднимаем на интерфейсе дебиана вилан с этим тегом и все в порядке. Так и победили, ребята с D-Link подтвердили, что это фича-баг именно чипа, а не прошивки :( Вставить ник Quote
pavel.odintsov Posted September 24, 2016 Author Posted September 24, 2016 Да, Extreme ведут себя ровно также. Я думаю это фишка ASIC'ов. Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.