День добрый.
Есть локалка на 4к абонентов. Необходимо организовать подсчет исходящего трафика.
На cisco 3750 делаю копию tx пакетов в порт сервака (em1).
Собственно вопрос в том, как теперь его подсчитать ?
Делаю так:
#!/bin/sh
ipfw='/sbin/ipfw -q'
counter=em1
$ipfw flush
$ipfw -q pipe flush
netgraph='netgraph.sh'
# NetGraph -
$netgraph stop
$netgraph start
$ipfw add 11 ngtee 30 ip from any to any in recv $counter
# ==========
и так (netgraph.sh):
#!/bin/sh
case "$1" in
start)
/usr/sbin/ngctl mkpeer ipfw: netflow 30 iface0
/usr/sbin/ngctl name ipfw:30 netflow
/usr/sbin/ngctl msg netflow: setdlt {iface=0 dlt=12}
/usr/sbin/ngctl msg netflow: setifindex {iface=0 index=5}
/usr/sbin/ngctl mkpeer netflow: ksocket export inet/dgram/udp
/usr/sbin/ngctl msg netflow:export connect inet/127.0.0.1:9996
;;
stop)
/usr/sbin/ngctl shutdown netflow:
;;
restart)
sh $0 stop
sleep 5
sh $0 start
;;
*)
echo ""
echo "Usage: `basename $0` { start | stop | restart }"
echo ""
exit 64
;;
esac
Проблема в том, что трафф от циски не ходит через интерфейс и правило ipfw 11 не заворачивает трафф на нужную ноду для последующего экспорта его в дебиллинг.
Бридж между em1 и lo0 не поднять, с циски слать сразу же netflow не реально, ибо ляжет она. Биллинг и резалка канала разнесены на два сервака для надежности. Если слать нетфлоу в с сервака с резалкой, то возникают задержки по 3-4мс при прохождении пакетов через файерволл, что не айс.
Подскажите как быть тут мне ?