squid + net-acct проблемы подсчёта трафика.
Есть сервер (Debian 5.0) отвечающий за инет, интерфейс eth0 смотрит в локальную сеть, интерфейс eth1 смотрит в мир. Логи net-acct 0.71-8 анализируются NiTraf.
Правила для iptables:
iptables -t filter -F
iptables -t nat -F
iptables -t mangle -F
iptables -t filter -X
iptables -t nat -X
iptables -t mangle -X
iptables -N eth0-eth1
iptables -N eth0-in
iptables -N eth1-in
iptables -N eth1-eth0
iptables -A FORWARD -i eth0 -o eth1 -j eth0-eth1
iptables -A INPUT -i eth0 -j eth0-in
iptables -A INPUT -i eth1 -j eth1-in
iptables -A FORWARD -i eth1 -o eth0 -j eth1-eth0
iptables -A eth0-in -s 192.168.1.2 -j ACCEPT
iptables -A eth0-in -s 192.168.1.3 -j ACCEPT
iptables -A eth0-in -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A eth0-in -j DROP
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128
iptables -A eth0-eth1 -s 192.168.1.2 -j ACCEPT
iptables -A eth0-eth1 -s 192.168.1.3 -j ACCEPT
iptables -A eth0-eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A eth0-eth1 -j DROP
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth1 -j SNAT --to-source 10.17.69.82
iptables -A eth1-in -d 10.17.69.82 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A eth1-in -d 10.17.69.82 -j DROP
iptables -A eth1-eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A eth1-eth0 -j DROP
Настройки net-acct
flush 300
fdelay 60
file /opt/trafdata/raw/net-acct.log
dumpfile /opt/trafdata/raw/dump
iflimit eth0
ignoremask 255.255.255.0
ignorenet 127.0.0.0 255.0.0.0
debug 2
debugfile /opt/trafdata/raw/net-acct.debug
headers tr 40 38
headers lo 14 12
headers isdn 4 0
headers eth 14 12
headers plip 14 12
disable 7net-acct считает трафик до копейки, но есть один недочёт, он считает его только пока squid настроен как прозрачный. Если пользователь явно указывает прокси, учёт его трафика прекращается. Как заставить netacct посчитать весь трафик проходящий через через интерфейс eth0? Или если есть возможность, не позволить указать пользователю прокси сервер явно?