Controlando nova interface com HTB + controle de download com upload automático por usuário

Publicado por Alan em 13/10/2008

[ Hits: 12.172 ]

Blog: http://www.informaticainove.com.br

 


Controlando nova interface com HTB + controle de download com upload automático por usuário



Esta dica tem como finalidade acrescentar mais interfaces no Controle de Banda HTB, visto que ele somente controla tráfego das interfaces ethx. Nesta dica mostrarei como implementá-lo para controlar qualquer interface, mostrando exemplos de como controlar o tráfego da interface da ath0, minha placa de rede wireless Atheros que está configurada como access point.

Tudo isso pela necessidade que surgiu depois que troquei o Ap pela minha placa de rede. Esta mesma dica mostra como controlar o uso de banda por ip com controle de upload automático. Boa sorte todos!

Todos as alterações serão feitas com usuário root.

1. Fazer backup dos arquivos:

# cp /sbin/htb /home/htb.new
# cp /etc/rc.d/rc/htb /home/rc.htb.new


2. Vamos criar a interface:

# touch /etc/htb/ath0-qos.cfg

3. Agora vamos editar os arquivos:

# pico /sbin/htb

Crie uma linha abaixo da 77 com o seguinte conteúdo:

echo "The configuration files are located in $CONF_DIR must be named: ath[0-255]-qos.cfg

Feche e saia. (Ctrl + x) (y) enter

4. A pior parte. Agora vamos acrescentar algumas informações no arquivo abaixo:

# pico /etc/rc.d/rc.htb

Abaixo de:

#stop HTB on eth1
   'stop_eth1')
      /sbin/htb eth1 stop ;;

Acrescente:

#start HTB on ath0 wireless and eth1
    'start')
    /sbin/htb ath0 start
    sleep 5
    /sbin/htb eth1 start ;;

#stop HTB on ath0 wireless and eth1    
    'stop')
    /sbin/htb ath0 stop
    /sbin/htb eth1 stop ;;

#start HTB on ath0 wireless    
   'start_ath0')
      /sbin/htb ath0 start ;;


#stop HTB on ath0 wireless    
   'stop_ath0')
      /sbin/htb ath0 stop ;;

E depois da linha:

#creates the script that applies the traffic rules for eth1
   'gen_eth1')
      /sbin/htb eth1 generate ;;

Acrescente:

#show trafic per client on ath0 wireless
   'show_ath0')
      /sbin/q_show -i ath0 -f /etc/htb/ath0-qos.cfg ;;
   *)  

Cuidado com o parâmetro "*)", este deve ficar onde está e não onde vem como padrão abaixo do arquivo.

#creates the script that applies the traffic rules for eth1
   'gen_eth1')
      /sbin/htb eth1 generate ;;

Atenção! É de fundamental importância que inicie e pare as interfaces na mão, pois tem uns bugs no script que ainda não foram corrigidos:

# htb ath0 start (inicia o controle de banda na ath0)
# htb ath0 stop (para o controle de banda na ath0)
# htb ath0 stats (verifica em tempo real o uso da banda por usuário)

Segue abaixo como controlar vários usuários independentes, tipo usuário 192.168.x.x tem 256mb, enquanto usuário 192.168.x.y tem 128mb, nesse script só é necessário a configuração do tráfego de download, pois o upload é configurado automático retirando a porcentagem correta do tráfego de download.

#################
# ath0-qos.cfg wireless
#################
# for how to configure and use see docs/HowTo/


class class_1 {
   bandwidth 10000000;
   limit 10000000;
   burst 2;
   priority 1;


   client cliente_1_254 {
      bandwidth 10000000;
      limit 10000000;
      burst 2;
      priority 1;
      src {
         192.168.0.254/32;
      };


   };

};

class class_2 {
   bandwidth 300;
   limit 300;
   burst 2;
   priority 1;


   client cliente_fulano {
      bandwidth 192;
      limit 225;
      burst 2;
      priority 1;
      dst {
         192.168.254.10/32;
      };
   };


};



class class_3 {
   bandwidth 300;
   limit 300;
   burst 2;
   priority 1;


   client cliente_sicrano {
      bandwidth 192;
      limit 225;
      burst 2;
      priority 1;
      dst {
         192.168.254.12/32;
      };

   };

};

  
class class_4 {
   bandwidth 600;
   limit 600;
   burst 2;
   priority 1;



   client cliente_all {
      bandwidth 175;
      limit 175;
      burst 2;
      priority 1;
      dst {
         192.168.254.0/24;
      };
   };


};

class default { bandwidth 8; };

Bom, espero que tenha ajudado!

MSN: apsxe@yahoo.com.br

Outras dicas deste autor

Instalando aMSN no Slackware 12 e 12.2 da forma mais simples possível

Stream de Video no Linux Maemo para uso do N900 como Webcam

VPN PPTP Windows 2003 Server + GRE + Slackware 12

Instalando EyeOS no Slackware 12 e 12.2 sem mistérios

Leitura recomendada

Gradius - Gerenciador de RADIUS

Habilitar Expressão Regular no Gedit

Cyberlink PowerDVD para Linux

Sabayon Linux: Entropy sem espaço temporário para atualizar [Resolvido]

Mandala esférica no GIMP

  

Comentários
[1] Comentário enviado por xjc em 14/10/2008 - 01:40h

cara vc só esqueceu como instalar esse htb ? fica meio quebrado seu tutorial

[2] Comentário enviado por apsxe em 14/10/2008 - 22:46h

hauah verdade mas pra instalar é muito facil.


tar -zxvf nome do pacote.tar.gz
cd nomedopacote
./configure
make && make install

---
No Slack

só é pega-lo em:

www.linuspackages.net

installpkg nomedopacote.tgz

cabou!



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts