View previous topic :: View next topic |
Author |
Message |
Nicephorus n00b
Joined: 28 Feb 2005 Posts: 15
|
Posted: Fri Mar 25, 2005 6:32 pm Post subject: Кривой Bash в Gentoo или у меня кривые |
|
|
решил настроить в нашей локалке рассчет трафика по компам.
нашел очень интересный скрипт http://www.linuxcenter.ru/lib/articles/networking/iptables_accounting.phtml
или места где сбоит отметил
ВОТ КОД!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
##########################################################################
# ! /bin/bash
# iptables.load - установка правил
# Входящие политики по умолчанию
...*
# Дополнительные цепочки
...*
# Цепочки для расчета трафика приходящего на внешний интефейс
# Таким образом мы имеем весь трафик который к нам
# пришел от провайдера.
/sbin/iptables -N in_traf
/sbin/iptables -N fwd_in_traf
# Цепочки для расчета трафика по пользователям
i=1
while [ $i -le 254 ]
do
/sbin/iptables -N chain_$i
i=`expr $i + 1`
done
# Работа цепочек
...*
# Работа цепочек по расчету трафика
/sbin/iptables -A in_traf -j RETURN
/sbin/iptables -A fwd_in_traf -j RETURN
i=1
while [ $i -le 254 ]
do
/sbin/iptables -A chain_$i -j RETURN
i=`expr $i + 1`
done
# Работа входящей цепочки
# Эти цепочки должны стоять обязательно первыми.
/sbin/iptables -A INPUT -i eth1 -j in_traf
...*
# Работа цепочки роутинга
# Эти цепочки должны стоять обязательно первыми.
i=1
while [ $i -le 254 ]
do
/sbin/iptables -A FORWARD -o eth0 -d 192.168.1.$i -j chain_$i
i=`expr $i + 1`
done
/sbin/iptables -A FORWARD -i eth1 -j fwd_in_traf
...*
# Работа исходящей цепочки
...*
# Работа цепочки маскарадинга
...*
# End
#########################################################################
*... - здесь должны быть ваши правила.
Этот файл нужно поставить в автозагрузку.
Следующий файл должен выполняться в 23:50 для того, чтобы в файле была правильная дата. Его также нужно выполнять при перезагрузках компьютера, чтобы сохранялись значения счетчиков.
#############################################################################
# ! /bin/bash
# traf.logging - Сбор трафика в файлы *.xls
# Смена директории по умолчанию
# Эти файлы находятся в директории /root
# поэтому мне было проще писать их в поддиректорию
# откуда ини забираются по ssh и спокойно открываются в Excel'e
# В результате получаются файлы с именами "номер месяца".xls и
# users_"номер месяца".xls
# Внутри него создается таблица вида:
# Дата - последний байт ip адреса - трафик в байтах
cd /root/trafic
# Присваивание параметров для мониторинга
MNTH=`date +%m`
DAT=`date +%d`
# Расчет величины трафика входящего на интерфeйс
# eth1 ( Внешний интерфейс)
# Максимальный расчетный трафик за день - 953МВ
IN=`/sbin/iptables -L INPUT -v -x | grep traf | head -c 18 | tail -c 9`
FW=`/sbin/iptables -L FORWARD -v -x | grep traf | head -c 18 | tail -c 9`
RX=`expr $IN + $FW` ПОЧЕМУ НЕ СКЛАДЫВАЕТ? пишет синтаксич ошибка... если второй оператор заменить на число то скалдывает... пишет: !expr: syntax error!
# Вывод расчетной величины трафика в файл
echo "$DAT$RX" >> ${MNTH}.xls
# Расчет индивидуальных пользователей
i=1
while [ $i -le 254 ]
do
RX=`/sbin/iptables -L FORWARD -v -x | grep chain_$i | head -c 18 | tail -c 9`
if [ $RX -ne 0 ] про оператор унарный придрался...
then echo "$DAT$i$RX" >> users_${MNTH}.xls
fi
i=`expr $i + 1`
done
# Очистка счетчиков трафика для следующего дня
/sbin/iptables -Z
# Done
###############################################################################
КОНЕЦ КОДА!!!!!!!!!!!!!!!!!!!!
ПОЖАЛУЙСТА ПОМОГИТЕ! в чем дело не пойму... |
|
Back to top |
|
|
ZmiyGorinich Guru
Joined: 27 Feb 2004 Posts: 369 Location: Zaporizhzhe, Ukraine
|
Posted: Sat Mar 26, 2005 7:21 am Post subject: |
|
|
Проверь что у тебя в:
IN=`/sbin/iptables -L INPUT -v -x | grep traf | head -c 18 | tail -c 9`
FW=`/sbin/iptables -L FORWARD -v -x | grep traf | head -c 18 | tail -c 9` _________________ Home: Athlon XP 2000+, ATI Radeon 9200 64Mb, 512Mb, hda:40Gb, hdb:120Gb, DVD-RW
Work : Duron 1.4, S3 ProSavage8 32Mb, 512Mb, hda:40Gb, CD-RW
Design, programming, hosting |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|