[MASOCH-L] Redirecionamento de interfaces

davi peres daviperes at gmail.com
Wed May 7 09:25:10 BRT 2014


Da para fazer isso sim Leandro.

echo "33 PRINCIPAL" >> /etc/iproute2/rt_tables
ip rule add from all fwmark 1 table PRINCIPAL
iptables -t mangle -I PREROUTING -p tcp --sport 25 -j MARK --set-mark 33
ip route add via 177.220.129.41 dev eth1 table PRINCIPAL

Serial algo mais ou menos assim.



Em 7 de maio de 2014 08:42, Leandro <leandro at allchemistry.com.br> escreveu:

> Permita-me explicar melhor meu problema. Acredito que não seja possível
> fazer com iptables, por isso recorri a vocês.
>
> Tenho dois links que servem como acesso à Internet. Um deles é o link
> principal e o outro serve apenas para contingência. Quando algum problema
> ocorre no principal, o meu script transfere todo o roteamento de Internet
> para o link de contingência.
>
> Até ai normal. O problema é que todo e-mail enviado por nós deve sair pelo
> link principal e de forma alguma pelo de contingência. Para evitar que
> algum e-mail saia pelo link de contingência, eu coloquei uma regra no
> iptables para dropar todos os pacotes da porta 25 saindo deste link, por
> garantia. A situação normal quando o link principal cai é congelar todos os
> envios e a guardar o link principal voltar.
>
> O problema é que ocorreu uma situação incomum ontem. O link principal não
> caiu, mas estava com problema de transmissão de pacotes para determinados
> destinos, fazendo com que muitos conteúdos web não aparecessem corretamente
> nos navegadores dos funcionários. Para solucionar o problema dos conteúdos
> web, sem parar o serviço de email, pensei em transferir todo o tráfego para
> o link de contingência exceto aqueles cujos pacotes sejam da porta 25.
> Tentei usar o route, mas o manual diz que você só pode configurar redes
> nele e não portas (o que faz muito sentido). Então pensei no iptables, mas
> não achei nada no Google que mencionasse transferência de pacotes (sem
> alteração do conteúdo do pacote) de uma interface para outra.
>
> Ontem mesmo o problema do link principal foi resolvido pela operadora.
> Depois disto eu vi também que é possível configurar o Exim4 para transmitir
> apenas por uma interface. Entretanto para curiosidade técnica, gostaria de
> saber se existe alguma forma de rotear pacotes pela porta (apenas) entre
> interfaces, e sem alterar o conteúdo dos pacotes. Gostaria de saber isto
> até para conseguir solucionar outros problemas semelhantes, onde não existe
> possibilidade de configurar um determinado sofware para transmitir apenas
> para uma determinada interface, por exemplo.
>
> Leandro Carlos Rodrigues
> TI All Chemistry do Brasil
> (11) 3014-7100
>
> Em 06/05/2014 13:34, Rafael Possamai escreveu:
>
>> Voce vai ter que habilitar o forwarding de pacotes entre interfaces, e
>> como
>> mencionou iptables, imagino que esteja usando Linux, entao seria algo
>> assim:
>>
>> sysctl -w net.ipv4.conf.all.forwarding=1
>>
>> A sua regra seria mais ou menos assim:
>>
>> iptables -A FORWARD -i eth1 -o eth2 -p tcp --dport YY -d x.x.x.x -j ACCEPT
>>
>> Mas depende muito de como quer fazer... Neste caso ele aceita pacotes
>> saindo da eth1 indo para ip x.x.x.x:YY que esta atras da eth2.
>>
>> Nao se esqueca de adicionar as rotas corretas para cada subnet servida por
>> cada interface, se nao o forwarding entre pacotes nao vai funcionar.
>>
>>
>> Att.,
>> Rafael
>>
>>
>>
>>
>>
>> 2014-05-06 9:00 GMT-05:00 Leandro <leandro at allchemistry.com.br>:
>>
>>  Pessoal,
>>>
>>> Alguém sabe a regra de iptables para redirecionar todos os pacotes de uma
>>> certa porta de destino de uma interface para outra interface?
>>>
>>> --
>>> Leandro Carlos Rodrigues
>>> TI All Chemistry do Brasil
>>> (11) 3014-7100
>>>
>>> __
>>> masoch-l list
>>> https://eng.registro.br/mailman/listinfo/masoch-l
>>>
>>>  __
>> masoch-l list
>> https://eng.registro.br/mailman/listinfo/masoch-l
>>
>
> __
> masoch-l list
> https://eng.registro.br/mailman/listinfo/masoch-l
>


More information about the masoch-l mailing list