[MASOCH-L] Redirecionamento de interfaces

Leandro leandro at allchemistry.com.br
Wed May 7 08:42:48 BRT 2014


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



More information about the masoch-l mailing list