Есть шлюз фря 9.2х32. Служба mpd5 подымает одну впнку ng0, чтобы на сервере появился интернет. Далее mpd5 разрешает 10 людям подключаться к себе из разных подсетей(всего из 10). 172.20.0.0/24,172.20.1.0/24 и так 10 сетей.
Сессии подымаются, все хорошо, хочется считать с помощью программы ipacctd, скрипт написан на РНР, он запускает ipacctd на 20000 порту(так повелось) и 20001 (вход и выход соответственно).
Это часть скрипта который считает трафик ipacctd.
Код: Выделить всё
/usr/local/sbin/ipacctd -m 900000 -v -p 20000 -f /mnt/ramdisk/ipacctd.in
/sbin/ipfw -q add 16000 divert 20000 all from any to any via ng* out
/usr/local/sbin/ipacctd -m 900000 -v -p 20001 -f /mnt/ramdisk/ipacctd.out
/sbin/ipfw -q add 16001 divert 20001 all from any to any via ng* in
Код: Выделить всё
${ipfw} 50 allow all from 172.17.12.236/32 to me keep-state
${ipfw} 50 allow all from ${vlan20},${vlans200},${usernet},${worknet},${bibl},${local} to me 21,22,80,443,1723,22,161,23,5006
${ipfw} 50 allow all from me to ${vlan20},${vlans200},${usernet},${worknet},${bibl},${local} 21,22,80,443,1723,22,161,23,5006
${ipfw} 50 allow all from 192.168.10.0/24 to ${bibl},${local},${worknet},${vlan20},${vlans200},${usernet},${vpn} via ng*
${ipfw} 50 allow all from ${bibl},${local},${worknet},${vlan20},${vlans200},${usernet},${vpn} to 192.168.10.0/24 via ng*
Код: Выделить всё
${ipfw} 20000 allow all from table\(20\) to any via ng*
${ipfw} 20001 allow all from any to table\(20\) via ng*
Вопрос, где еще что написать чтобы локальный трафик не считался?
Код: Выделить всё
# cat /etc/ipnat.sh
map ng0 from 192.168.10.0/24 to any -> 192.168.100.22/32