Страница 1 из 1
ng_nat + ng_netflow + mpd - детальная статистика
Добавлено: 2007-09-24 12:47:21
wel
Привет Всем
ng_nat + ng_netflow + mpd - детальная статистика и нат в одном флаконе
Хотелось бы где-нить почитать РАБОЧИЙ пример использования:
ng_nat+ng_netflow+mpd4
Примеры что в Инете - у Меня не работают:
Весь затык на правилах ipfw - пакеты туды попадают, но дальше никуда не выходят в том числе
ipfw add allow all from any to any
И все - получаю непингуемую машину
- ipfw по умолчанию deny all
# ifconfig
Код: Выделить всё
rl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=8<VLAN_MTU>
inet 10.11.2.1 netmask 0xffffff00 broadcast 10.11.2.255
rl1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=8<VLAN_MTU>
inet 192.168.100.99 netmask 0xffffff00 broadcast 192.168.100.255
plip0: flags=108810<POINTOPOINT,SIMPLEX,MULTICAST,NEEDSGIANT> mtu 1500
pfsync0: flags=0<> mtu 2020
syncpeer: 224.0.0.240 maxupd: 128
pflog0: flags=0<> mtu 33208
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
inet 127.0.0.1 netmask 0xff000000
rl0 - локалка
rl1 - инет
flow-capture - работает, причем даже с ng_netflow -
#ngctl -f /ng_netflow
#cat /ng_netflow
Код: Выделить всё
mkpeer rl1: tee lower left
name rl1:lower tee0
connect rl1: rl1:lower upper right
mkpeer tee0: one2many left2right many0
name tee0:left2right one2many0
connect tee0: one2many0: right2left many1
mkpeer one2many0: netflow one iface0
name one2many0:one netflow
mkpeer netflow: ksocket export inet/dgram/udp
msg netflow: setifindex { iface=0 index=2 }
msg netflow:export connect inet/127.0.0.1:2222
Такой скрипт (ng_nat+ng_netflow - для подсчета любого трафика отправленого ipfw не работает) :
Код: Выделить всё
#!/bin/sh
EXT_IP="192.168.100.99"
LOCAL_NET="10.11.2.0/24"
/usr/sbin/ngctl mkpeer ipfw: nat 70 out
/usr/sbin/ngctl name ipfw:70 nat
/usr/sbin/ngctl connect ipfw: nat: 71 in
/usr/sbin/ngctl msg nat: setaliasaddr $EXT_IP
/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=1}
/usr/sbin/ngctl mkpeer netflow: ksocket export inet/dgram/udp
/usr/sbin/ngctl msg netflow:export connect inet/127.0.0.1:2222
/sbin/ipfw add 6400 allow all from any to any
/sbin/sysctl net.inet.ip.fw.one_pass=0
/sbin/ipfw add 110 ngtee 30 ip from any to any out via ng*
/sbin/ipfw add 111 ngtee 30 ip from any to any in via ng*
/sbin/ipfw add 200 netgraph 71 all from not $LOCAL_NET to $EXT_IP out via rl1
/sbin/ipfw add 201 netgraph 70 all from $LOCAL_NET to not $LOCAL_NET in via rl1
/usr/local/bin/flow-capture -n 287 -w /var/db/flows/ 0.0.0.0/127.0.0.1/2222
Re: ng_nat + ng_netflow + mpd - детальная статистика
Добавлено: 2007-09-24 13:23:26
squid
у меня стоит связка ng_netflow+mpd+flow-tools
статистику собирает вроде все работает
стоит natd
если интересуют конфиги могу сбросить
Re: ng_nat + ng_netflow + mpd - детальная статистика
Добавлено: 2007-09-24 14:45:38
wel
squid писал(а):у меня стоит связка ng_netflow+mpd+flow-tools
статистику собирает вроде все работает
стоит natd
если интересуют конфиги могу сбросить
Давай - Мне интересно ка Ты статистику с ng*-интерфейсов снимаешь?
Ладно нат будет не ng_* - не страшно, а вот статистика с ng*-интерфейсов интересует - из-за этого же думал на ng_netflow перейти и заодно и на ng_nat
Re: ng_nat + ng_netflow + mpd - детальная статистика
Добавлено: 2007-09-24 16:23:33
squid
вот такие настройки ng_netflow снимает входящий и исходящий код
Код: Выделить всё
/usr/sbin/ngctl -f- <<-SEQ
mkpeer ng0:inet netflow right2left iface0
name ng0:inet.right2left netfl
connect ng0:inet netfl: left2right iface1
msg netfl: setdlt { iface=0 dlt=12 }
msg netfl: setdlt { iface=1 dlt=12 }
mkpeer netfl: ksocket export inet/dgram/udp
msg netfl:export connect inet/127.0.0.1:4444
SEQ
далее настроен flow-capture который принимает трафик и записывает у файлы
вот с такими параметрами запускаю
Код: Выделить всё
flow-capture -S 1 -n479 -N-2 -w /var/db/flows -p /var/run/flow.pid
Re: ng_nat + ng_netflow + mpd - детальная статистика
Добавлено: 2007-09-24 16:31:39
wel
squid писал(а):вот такие настройки ng_netflow снимает входящий и исходящий код
Тоесть Еслир у Меня 700 интерфейсов ng* - Я должен буду прописать примерно так? Или можно как-то по другому?
ЗЫ: Траффик ноормально отбражается?
мир-серый ИП
серый ИП-мир
?
Код: Выделить всё
mkpeer ng$X:inet netflow right2left iface0
name ng$X:inet.right2left netfl
connect ng$X:inet netfl: left2right iface1
msg netfl: setdlt { iface=0 dlt=12 }
msg netfl: setdlt { iface=1 dlt=12 }
Re: ng_nat + ng_netflow + mpd - детальная статистика
Добавлено: 2007-09-24 16:54:57
squid
wel писал(а):Тоесть Еслир у Меня 700 интерфейсов ng* - Я должен буду прописать примерно так? Или можно как-то по другому?
интересный конечно вопрос
ng0 у меня один, направлен у меня на инет и показывает только мир = реальный айпи и наоборот, поскольку стоит нат
а на этом же компе ng_netflow снимает статистику с сетевухах там показывает мир-серый айпи, серый айпи - мир
Re: ng_nat + ng_netflow + mpd - детальная статистика
Добавлено: 2007-09-24 17:13:15
wel
squid писал(а):
интересный конечно вопрос
ng0 у меня один, направлен у меня на инет и показывает только мир = реальный айпи и наоборот, поскольку стоит нат
а на этом же компе ng_netflow снимает статистику с сетевухах там показывает мир-серый айпи, серый айпи - мир
Вопрос в следующем:
есть такая схема:
rl0 - локалка
rl1 - инет
Inet<==>real ip (заменён на 10.11.2.1)(rl1) || 192.168.100.99 (rl0) <== подключение по vpn ==> серая подсеть 192.168.1.0/24
Натится все так:
192.168.1.0/24 => 10.11.2.1(реальный ИП-к)
Если статистику снимать на rl0,rl1 например с помощью softflowd. То Я не вижу траффик :
192.168.1.0/24 =>Inet
Inet =>192.168.1.0/24
Надо вешать softflowd на каждый ng* - что для 700 интерфейсов накладно да и тупо...
В общем Я рашил - почему бы не соеденить ng_nat+ng_netflow - как описано это здесь:
http://wiki.bsdportal.ru/doc:netgraph_ng_nat
Но получилось так что все примеры адаптированные для моей схемы не работают
Даже пример из man 4 ng_nat тоже
Re: ng_nat + ng_netflow + mpd - детальная статистика
Добавлено: 2007-09-24 17:17:39
wel
Тогда вопрос - в твоей схеме будет работать то что Я хочу?
статистика для (серой подсетки)
192.168.1.0/24 =>Inet
Inet =>192.168.1.0/24
Если да - то поподробнее можешь?
Re: ng_nat + ng_netflow + mpd - детальная статистика
Добавлено: 2007-09-24 19:51:19
squid
wel писал(а):Вопрос в следующем:
есть такая схема:
rl0 - локалка
rl1 - инет
у меня
xl0 - локалка
ng0 - инет
rl1 - IР-телефон
ng_netflow считает на:
ng0 - общий трафик
rl1 - трафик айпи телефона
xl0 - трафик вот в таком виде
Код: Выделить всё
# flow-cat ft-v05.2007-09-24.193900+0300 | flow-print | grep 192.168.71
77.73.24.4 192.168.71.101 6 80 1062 163951 127
213.180.214.31 192.168.71.101 6 80 1070 628 4
192.168.71.101 77.73.24.4 6 1062 80 6531 77
192.168.71.101 213.180.214.31 6 1070 80 958 6
213.180.214.31 192.168.71.101 6 80 1065 40 1
213.180.214.31 192.168.71.101 6 80 1074 3847 5
192.168.71.101 213.180.214.31 6 1074 80 754 6
77.73.24.4 192.168.71.101 6 80 1063 40 1
77.73.24.4 192.168.71.101 6 80 1064 40 1
213.180.214.31 192.168.71.101 6 80 1066 40 1
213.180.214.31 192.168.71.101 6 80 1068 40 1
77.73.24.4 192.168.71.101 6 80 1071 82350 65
213.180.214.31 192.168.71.101 6 80 1069 617 3
213.180.214.31 192.168.71.101 6 80 1076 657 4
213.180.214.31 192.168.71.101 6 80 1075 897 5
77.73.24.4 192.168.71.101 6 80 1073 620 4
77.73.24.4 192.168.71.101 6 80 1072 890 5
192.168.71.101 213.180.214.31 6 1076 80 1217 6
192.168.71.101 213.180.214.31 6 1075 80 1583 8
192.168.71.101 77.73.24.4 6 1071 80 3666 41
192.168.71.101 77.73.24.4 6 1072 80 2499 10
192.168.71.101 77.73.24.4 6 1073 80 1713 8
77.73.24.4 192.168.71.101 6 80 1062 40 1
213.180.214.31 192.168.71.101 6 80 1074 40 1
192.168.71.101 209.85.129.99 6 1061 80 785 7
192.168.71.101 205.188.13.44 6 1045 5190 1437 16
192.168.71.0/24 это подсеть ng*
192.168.71.101 - это я сейчас сижу
то есть я могу увидеть кто куда ходил и считать трафик по айпи, есть заготовка к веб морде но никак не настрою
Re: ng_nat + ng_netflow + mpd - детальная статистика
Добавлено: 2007-09-24 20:21:20
wel
xl0 - локалка
ng0 - инет
Тогда такой вопрос:
Когда делаешь
# flow-cat ft-* | flow-print | grep ХХХ
Там видно траффик от локальной сети?
Просто не понятно 192.168.71.0 это ип-ки из локалки или это на серве ИП-к?
Re: ng_nat + ng_netflow + mpd - детальная статистика
Добавлено: 2007-09-24 21:03:12
squid
у меня в локалке 10.12.0.0/16
а 192.168.71.0/24 - это все адреса впн (на ng*)
wel писал(а):# flow-cat ft-* | flow-print | grep ХХХ
Там видно траффик от локальной сети?
нет видно трафик который идет через ng*
Re: ng_nat + ng_netflow + mpd - детальная статистика
Добавлено: 2007-09-24 21:08:09
wel
спасибо - хоть этим порадовал
ЗЫ:
Как парсиш netflow?
Re: ng_nat + ng_netflow + mpd - детальная статистика
Добавлено: 2007-09-24 21:14:08
squid
да я особо не заморачивался
flow-tools каждые 3 минуты пишет в файлы
а и каждый час все гоню в мускуль, а там уже разгребаю
больше пока ничего не делал, да и надобности пока нету
Re: ng_nat + ng_netflow + mpd - детальная статистика
Добавлено: 2008-05-11 14:39:37
shlang
Squid, приветствую.
У меня аналогичная ситуация:
FreeBSD 6.3 - Stable
ng0 - инет;
rl0 - первая локалка;
rl1 - вторая локалка.
Хотел посчитать трафик на ng0. Сделал по твоему примеру:
Код: Выделить всё
/usr/sbin/ngctl -f- <<-SEQ
mkpeer ng0:inet netflow right2left iface0
name ng0:inet.right2left netfl
connect ng0:inet netfl: left2right iface1
msg netfl: setdlt { iface=0 dlt=12 }
msg netfl: setdlt { iface=1 dlt=12 }
mkpeer netfl: ksocket export inet/dgram/udp
msg netfl:export connect inet/127.0.0.1:4444
SEQ
Но где-то, что- то не работает - трафик не считается(трафик реально присутствует):
Код: Выделить всё
[root@anime /]# flowctl netfl show
SrcIf SrcIPaddress DstIf DstIPaddress Pr SrcP DstP Pkts
Возможно будет предположение в чем косяк?
Если поможет, то хуки выглядят так:
Код: Выделить всё
+ show netfl:
Name: netfl Type: netflow ID: 0000004e Num hooks: 3
Local hook Peer name Peer type Peer ID Peer hook
---------- --------- --------- ------- ---------
export <unnamed> ksocket 0000004f inet/dgram/udp
iface1 <unnamed> bpf 00000018 left2right
iface0 <unnamed> bpf 00000018 right2left
+ show netfl:iface0
Name: <unnamed> Type: bpf ID: 00000018 Num hooks: 5
Local hook Peer name Peer type Peer ID Peer hook
---------- --------- --------- ------- ---------
left2right netfl netflow 0000004e iface1
right2left netfl netflow 0000004e iface0
mpd <unnamed> socket 00000016 demand
iface ng0 iface 00000002 inet
ppp mpd1079-vpn ppp 00000017 inet
+ show netfl:iface1
Name: <unnamed> Type: bpf ID: 00000018 Num hooks: 5
Local hook Peer name Peer type Peer ID Peer hook
---------- --------- --------- ------- ---------
left2right netfl netflow 0000004e iface1
right2left netfl netflow 0000004e iface0
mpd <unnamed> socket 00000016 demand
iface ng0 iface 00000002 inet
ppp mpd1079-vpn ppp 00000017 inet
Заранее спасибо!
Re: ng_nat + ng_netflow + mpd - детальная статистика
Добавлено: 2008-05-12 12:44:50
squid
смотри tcpdump идут ли вообще пакеты
а там уже по ситуации смотреть что не работает
более конкртено врятли получится подсказать, давно настраивал
а к тому серваку доступа нету чтобы посмотреть что там ещме может быть