Поставил себе mpd5 (великолепная штука надо сказать и удобная вещь бандлы, не знаю были ли они в 4,но не важно). Следующим щагом выкинул ndsad - cбор статистики организовал по низлежащему топику и для замены опции ndsad ng_lifetime успешно применил /usr/sbin/ngctl msg netflow: settimeouts { active=5 inactive=5 }
gate писал(а):сбор статистики ng_ipfw+ng_netflow
Код: Выделить всё
#!/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
Код: Выделить всё
add 110 ngtee 30 ip from any to any out via ng*
add 111 ngtee 30 ip from any to any in via ng*
С шейпером как рабоать по радиус параметрам нашел топик в разделе Документации и статьи на данном форуме (как я понял через ng_car). Но вот теперь что ещё касается одной интерестной вещи - это сбор статистики в mpd5 доступно через ng_ipaccd - впринципе вкурив данный пример
http://www.opennet.ru/prog/info/1393.shtml пришел к выводу что он строится на netgraph и впринципе схож с тем что предложено тут - но хотелось бы уточнить - если он РОДНОЙ для mpd5 не проще ли использовать именно его? Вернее не лучше ли, а если так, то почему и если кто делал через него, то поделитесь плз настроечками, все таки все родное возможно лучше). И вообще есть ли принципиальная разница как организовывать сбор статистики? через ng_netflow или ng_ipaccd? На сколько буде твелик выйгрыш от смены одного надругое?
ЗЫ. ng_nat что то не захотел работать, пока сижу на natd, но навернео это из за того что просто не поковырялся пока с начтройками.
ЗЗЫ. Кто нить вкурсе как можно НОРМАЛЬНО убивать ng интерфейсы?? Ниже скрипт что я щас пользуюсь для отключения узверей от Инета
Код: Выделить всё
USER_IP="$1"
PID_DIR=/var/run
test -z "$USER_IP" && exit 1
IF=`ifconfig | grep -B 1 "${USER_IP}" | head -n1 | awk {'print $1'} | cut -d ":" -f1`;
### For mpd (interface ng)
ifconfig ${IF} delete;
## uncomment for poptop (FreeBSD interface tun)
# PID=`cat ${PID_DIR}/${IF}.pid 2>/dev/null`;
# test -z "${PID}" && exit 1
# kill -INT ${PID}
# exit 0;
При таком ifconfig ng* delete у абонента остается висеть подключение - в случае с tun сносило по пиду под корень! Из вебморты mpd ифейс убивается на корню - если кто знает какой механизм там используется - подскажите.