Junior,

estou com mais 1 pequena duvida no meu caso.

iptables -t mangle -I POSTROUTING 1 -o eth0 -d 192.168.0.1 -j MARK
--set-mark 2
iptables -t mangle -I POSTROUTING 2 -o eth0 -d 192.168.0.1 -j RETURN

O que é os numeros após POSTROUTING? é a marcação do pacote?

O Pacote que veio com marcação 1 para o destino 192.168.0.1 foi marcdo como
2 e na linha seguinte o pacote marcado como 2 ele da um RETURN?

Grato

Att
Gustavo

Em 13 de outubro de 2010 09:11, Junior Polegato - Linux <
li...@juniorpolegato.com.br> escreveu:

> Em 12-10-2010 22:28, gunix escreveu:
>
>  Junior,
>> praticamente implantado a solução para controle de banda. Agradeço todo
>> esforo a este trabalho a vc.
>> Porem se possivel me ajude em mais 2 duvidas.
>> Eu marquei todos os pacotes que vem da eth1 com 1
>> iptables -t mangle -A PREROUTING -i eth1 -j MARK --set-mark 1
>> iptables -t mangle -A PREROUTING -i eth1 -j RETURN
>> e mais abaixo joguei isso para a classe que me da velocidade de acesso
>> discado.
>> Imagine que eu tenha 3 clientes:
>> 192.168.0.1
>> 192.168.0.2
>> 192.168.0.3
>> Tenho que marcar cada 1 com estacao com uma valor diferente e depois jogar
>> para as classes?
>> Ex:
>> iptables -t mangle -A PREROUTING -i eth1 -d 192.168.0.1 -j MARK --set-mark
>> 1
>> iptables -t mangle -A PREROUTING -i eth1 -d 192.168.0.2 -j MARK --set-mark
>> 1
>> iptables -t mangle -A PREROUTING -i eth1 -d 192.168.0.3 -j MARK --set-mark
>> 2
>> iptables -t mangle -A PREROUTING -i eth1 -d 192.168.0.1 -j RETURN
>> iptables -t mangle -A PREROUTING -i eth1 -d 192.168.0.3 -j RETURN
>> iptables -t mangle -A PREROUTING -i eth1 -d 192.168.0.2 -j RETURN
>> tc filter add dev eth0 parent 1: protocol ip handle 1 fw classid 1:11
>> tc filter add dev eth0 parent 1: protocol ip handle 2 fw classid 1:20
>> é isso?
>> E quando uso squid? Fiz uma teste e para quem usa proxy a navegação parece
>> que fica meio louca. TEm alguem que tem que fazer?
>> Não testei 100%, mas provavelmente de problemas...
>>
>
>
> Olá!
>
>        Legal que entendeu o espírito do controle de banda e está
> funcionando!
>
>        Quanto a marcar pacotes pelos destinos da sua rede internet, este
> deve ser feito depois de roteamento, pois o pacote chega na eth1
> (PREROUTING) com o IP de destino do seu firewall, o qual verifica na sua
> tabela de roteamento para qual IP da rede internet se destina este pacote,
> então troca o IP dele pelo IP da sua rede interna e então manda o pacote
> para sua interface de rede interna eth0 (POSTROUTING), aí sim entram nas
> regras do TC. Dessa forma o correto seria:
>
> iptables -t mangle -A POSTROUTING -o eth0 -d 192.168.0.1 -j MARK --set-mark
> 1
> iptables -t mangle -A POSTROUTING -o eth0 -d 192.168.0.1 -j RETURN
> iptables -t mangle -A POSTROUTING -o eth0 -d 192.168.0.2 -j MARK --set-mark
> 1
> iptables -t mangle -A POSTROUTING -o eth0 -d 192.168.0.2 -j RETURN
> iptables -t mangle -A POSTROUTING -o eth0 -d 192.168.0.3 -j MARK --set-mark
> 2
> iptables -t mangle -A POSTROUTING -o eth0 -d 192.168.0.3 -j RETURN
>
> tc filter add dev eth0 parent 1: protocol ip handle 1 fw classid 1:11
> tc filter add dev eth0 parent 1: protocol ip handle 2 fw classid 1:20
>
>        Veja que o RETURN fica abaixo de cada regra para que o firewall não
> passe pelas outras desnecessariamente.
>
>        Veja também que os pacotes já foram marcados com 1 quando chegaram
> da internet, então apenas precisa marcar com 2 os que não fazem parte do
> balaio, sendo dessa forma desnecessárias as 4 primeiras linhas acima.
>
>        Ainda pode organizar e subdividir sua rede interna em classes de IP
> para não ficar fazendo regras 1 a 1. Por exemplo, IPs de 192.168.0.0 a
> 192.168.0.7 são da classe 192.168.0.0/29, os de 192.168.0.1 a 192.168.0.15
> são da classe 192.168.0.8/29, de 192.168.0.128 a 192.168.0.255 da classe
> 192.168.0.0/25, aí é só marcar a classe de IP e filtrar cada marca para
> uma classe do TC, e assim não vai precisar fazer IP a IP.
>
>
> []'s
>         Junior Polegato
>
>

Responder a