Ola,

tenho visto muita gente na lista pesquisando por
Controle de Trafego baseado em endereco IP!

Dah para se conseguir isto com o Traffic Shaper do Linux.
Basta criar varios shapers e adiocar uma rota estatica
de um IP para o shaper.

Vejam um pequeno exemplo:

1) crie varios shapers, faca quantos voce precisar,
   cada shaper ira realiza um controle!

   $ cd /lib/modules/versao_kernel/net
   $ cp shaper.o shaper0.o
   $ cp shaper.o shaper1.o
   $ cp shaper.o shaper2.o
   ...

2) Atualize as dependencias parar os novos modulos:

   $ depmod -a

3) Carregue os modulos necessarios:

   $ insmod shaper0
   $ insmod shaper1
   ...

  Obs.: para cada modulo carregado, o kernel disponibiliza
  uma interface shaperX, que sera a interface de rota para
  o IP onde se quer limitar o trafeo.

4) Atache e configure a velocidade para cada shaper deveice:

   $ shapecfg attach shaper0 eth1
   $ shapecfg attach shaper1 eth1
   $ shapecfg attach shaper2 eth1
   ...
   $ shapecfg speed shaper0 64000
   $ shapecfg speed shaper1 256000
   $ shapecfg speed shaper2 64000

5) Configure os ips para os dispositivos shapers:

   $ ifconfig shaper0 192.168.1.1 netmask 255.255.255.0 up
   $ ifconfig shaper1 192.168.1.1 netmask 255.255.255.0 up
   $ ifconfig shaper2 192.168.1.1 netmask 255.255.255.0 up
   ...
   $ route del -net 192.168.1.0 netmask 255.255.255.0 dev shaper0
   $ route del -net 192.168.1.0 netmask 255.255.255.0 dev shaper1
   $ route del -net 192.168.1.0 netmask 255.255.255.0 dev shaper2
   ...

   Obs: a partir das versoes 2.2.x do kernel (se nao me engano), ao
   configurar uma interface, o kernel automaticamente adiciona uma rota
   parao endereco de rede pela interface. Por isso deve-se remover
   esta rota logo apos configurar a interface
   (queremos fazer shape somente para um IP, certo?).

6) Adicione rotas para os shapers:

   $ roude add -host 192.168.1.2 dev shaper0
   $ route add -host 192.168.1.3 dev shaper1
   $ route add -host 192.168.1.4 dev shaper1
   $ route add -host 192.168.1.5 dev shaper1
   $ route add -host 192.168.1.6 dev shaper2

   a saida do comando route deve ser algo como:

   Destino      Roteador   Mascara         Opcoes Metrica Ref  Uso Iface
   200.1.1.0    0.0.0.0    255.255.255.0   U      0       0    0   eth0
   192.168.1.2  0.0.0.0    255.255.255.255 UG     0       0    0   shaper0
   192.168.1.3  0.0.0.0    255.255.255.255 UG     0       0    0   shaper1
   192.168.1.4  0.0.0.0    255.255.255.255 UG     0       0    0   shaper1
   192.168.1.5  0.0.0.0    255.255.255.255 UG     0       0    0   shaper1
   192.168.1.6  0.0.0.0    255.255.255.255 UG     0       0    0   shaper2
   0.0.0.0      200.1.1.1  0.0.0.0         UH     1       0    0   eth0
   
7) Pronto! 


Ate +

[]'s
Eder F. Miotto
[EMAIL PROTECTED]


Assinantes em 20/03/2001: 2187
Mensagens recebidas desde 07/01/1999: 104551
Historico e [des]cadastramento: http://linux-br.conectiva.com.br
Assuntos administrativos e problemas com a lista: 
            mailto:[EMAIL PROTECTED]

Responder a