Gente uso o CBQ beleza so tenho uma duvida, tenho 10 maquinas cada uma vai navegar em velocidades diferentes tenho que criar um script de entrade e de saida pra cada uma?
Gente uso o CBQ beleza so tenho uma duvida, tenho 10 maquinas cada uma vai navegar em velocidades diferentes tenho que criar um script de entrade e de saida pra cada uma?
Tem.
[]s,
infelizmente vai ter criar sim como o pessoal ai em cima disse..kr o cbq eh um treco estranhu mesmo jah tentei ir atras de varias formas de configurar bande por faixas de ip e nunca encontrei...ateh encontre mas naum teim nada a ver eh duru kr mas fazer o q neh? o negócio eh tu criar uma conf separada pra cada estaçaum!!!!!
Eu uso aqui só controlando entrada, tem algum problema. Funciona,
Postado originalmente por jrctec
Tem não....pode usar assim se quizer
#!/bin/bash
echo " *********************************************************"
echo " **** Favor informar o IP que será modificado, antes de *"
echo " **** iniciar o Script de Atualização de banda. *"
echo " *********************************************************"
echo " "
echo " ---- Ultimo IP Modificado: "`cat /tmp/cbq/ip-old`" . ----"
#
echo " "
echo " 1-) Qual IP deseja modificar ou Adicionar a Banda: "
echo -n " Insira o Numero IP: "
read IP
clear
#
echo "********************************************************"
echo "* Controle de Banda para Linux v2.3 *"
echo "* *"
echo "********************************************************"
echo " "
#
# ---- Variaveis Ambiente. ----
#
DIRETORIO="/etc/cbq"
DIRETORIO_OLD="/tmp/cbq/old/"
#
IPDOWN="$IP"
IPUP="$IP,"
#
ETHUP="eth0"
ETHDOWN="eth1"
#
VERIFICA="`cat $DIRETORIO/*$IP* |grep RULE |cut -d = -f2 |tail -n 1`"
#
if [ "$IP" = "$VERIFICA" ]; then
echo " **** ATENCÃO!! ****"
echo " O IP que sera alterado as regras sera: $IP"
echo " Pressione [ENTER] para continuar:"
echo " Ou [Ctrl + C] para cancelar a operação "; read $object
else
touch $DIRETORIO/.cbq-0000.$IP-up $DIRETORIO/.cbq-0001.$IP-down
fi
#
IDUP="`ls $DIRETORIO/*$IP-up | cut -d. -f1 | cut -d- -f 2`"
IDDOWN="`ls $DIRETORIO/*$IP-down | cut -d. -f1 | cut -d- -f 2`"
#
CONTROLEUP="cbq-$IDUP.$IP-up"
CONTROLEDOWN="cbq-$IDDOWN.$IP-down"
#
NOMECLIENTE="`cat $DIRETORIO/$CONTROLEDOWN | grep Cliente | cut -d: -f 2 | cut -d. -f 1`"
VELATUALDOWN="`cat $DIRETORIO/$CONTROLEDOWN | grep RATE | cut -d = -f 2`"
VELATUALUP="`cat $DIRETORIO/$CONTROLEUP | grep RATE | cut -d = -f 2`"
PRIOATUAL="`cat $DIRETORIO/$CONTROLEUP | grep PRIO | cut -d = -f 2`"
#
BANDATUALUP="`head -n 62 /var/www/htdocs/mrtg/200.205.216.17/200.205.216.17_1.html | tail -n 1 $1 | cut -d ">" -f 3 | cut -d"(" -f 1`"
BANDATUALDOWN="`head -n 76 /var/www/htdocs/mrtg/200.205.216.17/200.205.216.17_1.html | tail -n 1 $1 | cut -d ">" -f 3 | cut -d"(" -f 1`"
ULTIMOSIDS="`ls $DIRETORIO | tail -n 1 | cut -d. -f1 `"
#
clear
echo "********************************************************"
echo "* Controle de Banda para Linux v2.4 *"
echo "* *"
echo "********************************************************"
echo " "
echo "********************************************************"
echo " IP que Será Modificado Banda : $IP"
echo " Antigo Nome do Cliente : $NOMECLIENTE"
echo " Velocidade Atual de UpLoad : $VELATUALUP"
echo " Velocidade Atual de Download : $VELATUALDOWN"
echo " Prioridade Atual no IP : $PRIOATUAL"
echo " CLSID do Arquivo de UpLoad : $IDUP"
echo " CLSID do Arquivo de Download : $IDDOWN"
echo " -----------------------------"
echo " Utilização atual do link UpLoad : $BANDATUALUP "
echo " Utilização atual do link Download: $BANDATUALDOWN "
echo " -----------------------------"
echo "********************************************************"
#
cp $DIRETORIO/$CONTROLEUP $DIRETORIO_OLD > /dev/null
cp $DIRETORIO/$CONTROLEDOWN $DIRETORIO_OLD > /dev/null
#
echo " -----------------------------------------------------"
echo " ---- Controle de Banda para o IP $IP. ----"
echo " -----------------------------------------------------"
echo ""
echo -n " 2-) Insira o Nome do Cliente: "
read nomecliente
echo -n " 3-) Insira o Valor para Upload: "
read bandaup
echo -n " 4-) Insira o Valor para Download: "
read bandadown
echo -n " 5-) Insira o Valor de $bandaup dividido por 10: "
read weightup
echo -n " 6-) Insira o Valor de $bandadown dividido por 10: "
read weightdown
echo " 7-) Insira o Valor de Prioridade desse IP (Padrão 5). "
echo -n " * IMPORTANTE: Quanto maior o Numero menor é a prioridade: "
read prio
echo " "
echo -n " 8-) Deseja Trocar ou Inserir um novo CLSID? [n/s] $c"; read answer
case $answer in
s|S)
rm $DIRETORIO/*$CONTROLEUP* > /dev/null
rm $DIRETORIO/*$CONTROLEDOWN* > /dev/null
#
echo "Ultimo ID INSERIDO: $ULTIMOSIDS"
echo -n "Inserindo Novo CLSID para Upload (Numero deve ser Par - Ex: 0002): "
read IDUP
echo -n "Inserindo Novo CLSID para Download (Numero deve ser Impar - Ex: 0003): "
read IDDOWN
echo " "
;;
N|n|*)
echo $IDUP
echo $IDDOWN
;;
esac
echo " "
#
CONTROLEUPNEW="cbq-$IDUP.$IP-up"
CONTROLEDOWNNEW="cbq-$IDDOWN.$IP-down"
#
# ---- Configurando Download. ----
#
cat $DIRETORIO/.texto-cbq-down > $DIRETORIO/$CONTROLEDOWNNEW
#
echo "# ---- Nome do Cliente: $nomecliente . ----" >> $DIRETORIO/$CONTROLEDOWNNEW
echo "#" >> $DIRETORIO/$CONTROLEDOWNNEW
echo DEVICE=$ETHDOWN,10Mbit,1Mbit >> $DIRETORIO/$CONTROLEDOWNNEW
echo RATE="$bandadown"Kbit >> $DIRETORIO/$CONTROLEDOWNNEW
echo WEIGHT="$weightdown"kbit >> $DIRETORIO/$CONTROLEDOWNNEW
echo PRIO=$prio >> $DIRETORIO/$CONTROLEDOWNNEW
echo "BOUNDED=yes" >> $DIRETORIO/$CONTROLEDOWNNEW
echo "#PARENT=$IDDOWN" >> $DIRETORIO/$CONTROLEDOWNNEW
echo "#" >> $DIRETORIO/$CONTROLEDOWNNEW
echo "# ---- Limitação do IP: $IP. ----" >> $DIRETORIO/$CONTROLEDOWNNEW
echo RULE=$IPDOWN >> $DIRETORIO/$CONTROLEDOWNNEW
echo "#" >> $DIRETORIO/$CONTROLEDOWNNEW
echo "# ---- Fim. ----" >> $DIRETORIO/$CONTROLEDOWNNEW
echo " "
#
# ---- Configurando UpLoad. ----
cat $DIRETORIO/.texto-cbq-up > $DIRETORIO/$CONTROLEUPNEW
#
echo "# ---- Nome do Cliente: $nomecliente . ----" >> $DIRETORIO/$CONTROLEUPNEW
echo "#" >> $DIRETORIO/$CONTROLEUPNEW
echo DEVICE=$ETHUP,10Mbit,1Mbit >> $DIRETORIO/$CONTROLEUPNEW
echo RATE="$bandaup"Kbit >> $DIRETORIO/$CONTROLEUPNEW
echo WEIGHT="$weightup"kbit >> $DIRETORIO/$CONTROLEUPNEW
echo PRIO=$prio >> $DIRETORIO/$CONTROLEUPNEW
echo "BOUNDED=yes" >> $DIRETORIO/$CONTROLEUPNEW
echo "#PARENT=$IDUP" >> $DIRETORIO/$CONTROLEUPNEW
echo "#" >> $DIRETORIO/$CONTROLEUPNEW
echo "# ---- Limitação do IP: $IP. ----" >> $DIRETORIO/$CONTROLEUPNEW
echo RULE=$IPUP >> $DIRETORIO/$CONTROLEUPNEW
echo "#" >> $DIRETORIO/$CONTROLEUPNEW
echo "# ---- Fim. ----" >> $DIRETORIO/$CONTROLEUPNEW
echo " "
#
echo $IP > /tmp/cbq/ip-old
#
echo "Paralizando controle de banda."
cbq stop
echo "Compilando as novas regras."
cbq compile > /dev/null
echo "Reiniciando o Controle de Banda com Novas Configurações."
cbq start
#
#
echo "As seguintes características foram Aleradas: "
echo " "
echo " Nome do Cliente: $nomecliente"
echo " IP alterado: $IP"
echo " Limitação de Upload à: $bandaup kbits"
echo " Limitação de Download à: $bandadown kbits"
echo " Prioridade Setada: $prio"
echo " "
#
pega este script ai
com ele vc cria as regras do cbq tanto para down como para up
echo -n " 5-) Insira o Valor de $bandaup dividido por 10: "
read weightup
echo -n " 6-) Insira o Valor de $bandadown dividido por 10: "
read weightdown
Voce pode usar bc ou expr para setar o valor $bandup / 10 sem precisar pedir pro individuo.
PS: Esse script deve rodar com kernel 2.6 também
[]s,
Tentei usar o escript e tive alguns erros, gostaria que se alguem podesse me ajudar, pois não entendo muito; segue os erros que apareceram.
cat: /tmp/cbq/ip-old: No such file or directory
---- Ultimo IP Modificado: . ----
esse erá o ip que queria controlar.
cat: /etc/cbq/*192.168.0.3*: No such file or directory
touch: cannot touch `/etc/cbq/.cbq-0000.192.168.0.3-up': No such file or directory
touch: cannot touch `/etc/cbq/.cbq-0001.192.168.0.3-down': No such file or directory
ls: /etc/cbq/*192.168.0.3-up: No such file or directory
ls: /etc/cbq/*192.168.0.3-down: No such file or directory
cat: /etc/cbq/cbq-.192.168.0.3-down: No such file or directory
cat: /etc/cbq/cbq-.192.168.0.3-down: No such file or directory
cat: /etc/cbq/cbq-.192.168.0.3-up: No such file or directory
cat: /etc/cbq/cbq-.192.168.0.3-up: No such file or directory
head: /var/www/htdocs/mrtg/200.205.216.17/200.205.216.17_1.html: No such file or directory
head: /var/www/htdocs/mrtg/200.205.216.17/200.205.216.17_1.html: No such file or directory
ls: /etc/cbq: No such file or directory
cp: impossível fazer stat em `/etc/cbq/cbq-.192.168.0.3-up': No such file or directory
cp: impossível fazer stat em `/etc/cbq/cbq-.192.168.0.3-down': No such file or directory
./criar-regra.sh: line 125: /etc/cbq/cbq-.192.168.0.3-down: No such file or directory
./criar-regra.sh: line 127: /etc/cbq/cbq-.192.168.0.3-down: No such file or directory
./criar-regra.sh: line 128: /etc/cbq/cbq-.192.168.0.3-down: No such file or directory
./criar-regra.sh: line 129: /etc/cbq/cbq-.192.168.0.3-down: No such file or directory
./criar-regra.sh: line 130: /etc/cbq/cbq-.192.168.0.3-down: No such file or directory
./criar-regra.sh: line 131: /etc/cbq/cbq-.192.168.0.3-down: No such file or directory
./criar-regra.sh: line 132: /etc/cbq/cbq-.192.168.0.3-down: No such file or directory
./criar-regra.sh: line 133: /etc/cbq/cbq-.192.168.0.3-down: No such file or directory
./criar-regra.sh: line 134: /etc/cbq/cbq-.192.168.0.3-down: No such file or directory
./criar-regra.sh: line 135: /etc/cbq/cbq-.192.168.0.3-down: No such file or directory
./criar-regra.sh: line 136: /etc/cbq/cbq-.192.168.0.3-down: No such file or directory
./criar-regra.sh: line 137: /etc/cbq/cbq-.192.168.0.3-down: No such file or directory
./criar-regra.sh: line 138: /etc/cbq/cbq-.192.168.0.3-down: No such file or directory
./criar-regra.sh: line 139: /etc/cbq/cbq-.192.168.0.3-down: No such file or directory
./criar-regra.sh: line 143: /etc/cbq/cbq-.192.168.0.3-up: No such file or directory
./criar-regra.sh: line 145: /etc/cbq/cbq-.192.168.0.3-up: No such file or directory
./criar-regra.sh: line 146: /etc/cbq/cbq-.192.168.0.3-up: No such file or directory
./criar-regra.sh: line 147: /etc/cbq/cbq-.192.168.0.3-up: No such file or directory
./criar-regra.sh: line 148: /etc/cbq/cbq-.192.168.0.3-up: No such file or directory
./criar-regra.sh: line 149: /etc/cbq/cbq-.192.168.0.3-up: No such file or directory
./criar-regra.sh: line 150: /etc/cbq/cbq-.192.168.0.3-up: No such file or directory
./criar-regra.sh: line 151: /etc/cbq/cbq-.192.168.0.3-up: No such file or directory
./criar-regra.sh: line 152: /etc/cbq/cbq-.192.168.0.3-up: No such file or directory
./criar-regra.sh: line 153: /etc/cbq/cbq-.192.168.0.3-up: No such file or directory
./criar-regra.sh: line 154: /etc/cbq/cbq-.192.168.0.3-up: No such file or directory
./criar-regra.sh: line 155: /etc/cbq/cbq-.192.168.0.3-up: No such file or directory
./criar-regra.sh: line 156: /etc/cbq/cbq-.192.168.0.3-up: No such file or directory
./criar-regra.sh: line 157: /etc/cbq/cbq-.192.168.0.3-up: No such file or directory
./criar-regra.sh: line 160: /tmp/cbq/ip-old: No such file or directory
alguem poderia me ajudar, o meu escript do cbq está em /etc/sysconfig/cbq.init
e as regas na mesma pasta.
está funcionando normal, mais gostei do escript e gostaria de usá-lo para automatizar novas regras que eu queira usar no futuro.