ng_nat ng_netflow

Простые/общие вопросы по UNIX системам. Спросите здесь, если вы новичок

Модераторы: vadim64, terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
nooblo
проходил мимо
Сообщения: 1
Зарегистрирован: 2013-11-12 11:49:53

ng_nat ng_netflow

Непрочитанное сообщение nooblo » 2013-11-12 11:53:56

Добрый день, хочу попробовать поставить биллинг, но проблема нашел пример, но он с подсчетом трафика, а мне нужно без, как вырезать из этого скрипта netflow ? Только чтобы нат работал нормально.

Код: Выделить всё

#!/bin/sh
. /etc/rc.subr
 
name="ngnat"
rcvar=`set_rcvar`
start_cmd="ngnat_start"
stop_cmd="ngnat_stop"
load_rc_config $name
eval "${rcvar}=\${${rcvar}:-'NO'}"
ngnat_aliasaddr1=${ngnat_aliasaddr1:-"0.0.0.0"}
ngnat_aliasaddr2=${ngnat_aliasaddr2:-"0.0.0.0"}
ngnat_export=${ngnat_export:-"127.0.0.1:9999"}
 
ngnat_start() {
  echo "Setup ng_nat and ng_netflow"
  /usr/sbin/ngctl -f- <<-SEQ
      mkpeer ipfw: netflow 1 iface0
      name ipfw:1 netflow
      mkpeer netflow: split out0 in
      name netflow:out0 split1
      mkpeer netflow: ksocket export inet/dgram/udp
      msg netflow:export connect inet/$ngnat_export
      connect split1: netflow: out iface1
      connect ipfw: netflow: 4 out1
      mkpeer split1: nat mixed out
      name split1:mixed nat1
      connect ipfw: nat1: 23 in
      connect ipfw: netflow: 5 iface2
      connect ipfw: netflow: 6 out2
      msg nat1: setaliasaddr $ngnat_aliasaddr1
      msg netflow: setdlt { iface=0 dlt=12 }
      msg netflow: setifindex { iface=0 index=1000 }
      msg netflow: setdlt { iface=1 dlt=12 }
      msg netflow: setifindex { iface=1 index=1001 }
      msg netflow: setdlt { iface=2 dlt=12 }
      msg netflow: setifindex { iface=2 index=1002 }
      connect ipfw: netflow: 7 iface3
      mkpeer netflow: split out3 in
      name netflow:out3 split2
      mkpeer split2: nat mixed out
      name split2:mixed nat2
      connect ipfw: nat2: 89 in
      connect split2: netflow: out iface4
      connect ipfw: netflow: 40 out4
      msg nat2: setaliasaddr $ngnat_aliasaddr2
      msg netflow: setdlt { iface=3 dlt=12 }
      msg netflow: setifindex { iface=3 index=1003 }
      msg netflow: setdlt { iface=4 dlt=12 }
      msg netflow: setifindex { iface=4 index=1004 }
SEQ
}
 
ngnat_stop() {
  /usr/sbin/ngctl -f- <<-SEQ
    shutdown nat1:
    shutdown nat2:
    shutdown split1:
    shutdown split2:
    shutdown netflow:
SEQ
}
 
run_rc_command "$1"
И я так понимаю в файле фаервола ничего не нужно менять?

Код: Выделить всё

#!/bin/sh
sysctl net.inet.ip.fw.one_pass=0
ipfw="/sbin/ipfw"

real="192.168.11.0/24{43,211-254}"
# группа реальных адресов

vpn1="10.0.0.0/16"
vpn2="10.100.0.0/16"
# "серые" подсети

inet1="192.18.11.0/24"
inet2="192.168.255.0/24"
#подсеть интерфейса inet1 и inet2

aliasaddr1="192.168.11.42"
aliasaddr2="192.168.255.1"
#адреса NAT

gate1="192.168.11.1"
gate2="192.168.255.254"
#шлюзы во внешний мир

${ipfw} -f flush

${ipfw} add netgraph 5   all from ${real} to any via "ng*" in
${ipfw} add fwd ${gate1} all from ${real} to not ${inet1}
#заворачиваем трафик от реальных адресов в netgraph 
#вышедшие из netgraph пакеты оправляем на роутер

${ipfw} add netgraph 1   all from ${vpn1} to any via "ng*" in
${ipfw} add fwd ${gate1} all from ${aliasaddr1} to not ${inet1}
#тоже самое, но пакеты попавшие в  хук 1 проходять процедуру
#преобразования адреса в nat1:

${ipfw} add netgraph 7   all from ${vpn2} to any via "ng*" in
${ipfw} add fwd ${gate2} all from ${aliasaddr2} to not ${inet2}
#аналогично двум правилам выше, но преобразование пакетов
#производится в nat2:

${ipfw} add netgraph 23 all from any to any via inet1 in
#загоняем пришедшие пакеты в nat1:

${ipfw} add netgraph 89 all from any to any via inet2 in
#тоже самое для nat2:

${ipfw} add allow all  from any to any
Последний раз редактировалось f_andrey 2013-11-12 13:45:22, всего редактировалось 1 раз.
Причина: Автору. пожалуйста, выбирайте соответствующий раздел форума.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35426
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: ng_nat ng_netflow

Непрочитанное сообщение Alex Keda » 2014-01-30 22:35:08

чем вам подсчёт мешает?
просто не юзайте, раз не нужен
Убей их всех! Бог потом рассортирует...