+ Responder ao Tópico



  1. #1

    Padrão FAZENDO NAT PARA IP VIRTUAL

    Pessoal, tenho um NAT único para duas redes. Uma na faixa 192.168.30.0(Um provedor de acesso via rádio) e outro na faixa 192.168.10.0(empresa que é proprietária do provedor). As duas redes não se enxergam, e nem devem.
    Tinha as seguintes regra:
    $INET_IFACE="eth2"
    $INET_ADDRESS="200.xxx.xxx.2"
    $RADIO_NET="192.168.30/24"
    $LOCAL_NET="192.168.30/24"
    .
    .
    .
    -> $IPT -t nat -A POSTROUTING -s $RADIO_NET -o $INET_IFACE -j SNAT --to-source $INET_ADDRESS
    -> $IPT -t nat -A POSTROUTING -s $LOCAL_NET -o $INET_IFACE -j SNAT --to-source $INET_ADDRESS

    Com isso todos os pacotes que saiam do NAT tinham seu endereço de origem alterado para o IP 200.xxx.xxx.2. O problema comecou quando os clientes da faixa 30 comecaram a mandar SPAM e a cair em blackists. Isso fazia com que todas os e-mails de ambas as redes voltassem(ja que na Internet todos vinham do mesm IP 200.xxx.xxx.2).

    1-Criei duas interfaces virtuais na máquina e defini os IP como 200.xxx.xxx.4 e 200.xxx.xxx.5

    2-Alterei o POSTROUTING para:
    -> $IPT -t nat -A POSTROUTING -s $LOCAL_NET -o $INET_IFACE -j SNAT --to-source $INET_ADDRESS4
    -> $IPT -t nat -A POSTROUTING -s $RADIO_NET -o $INET_IFACE -j SNAT --to-source $INET_ADDRESS5

    Entretando verifiquei no www.meuip.com.br e os acessos continuam partindo de 200.xxx.xxx.2. Sou eu que estou louco ou realmente o iptables não pode fazer NAT para um IP diferente do usado na interface de saída? Pela documentação do iptables isso é possivel sim.

    Tentei usar como parametro -o eth2:4(interface que eu atribuí o IP de final 4) mas o iptables retorna erro "Warning: wierd character in interface `eth2:1' (No aliases, :, ! or *)."


    Alguem ja precisou fazer isso?

    Grato,
    Marco
    ""O maior inimigo da verdade, não é a mentira e sim, a convicção." - Nietzsche."

  2. #2

    Padrão Re: FAZENDO NAT PARA IP VIRTUAL

    Su uma correcao
    $LOCAL_NET="192.168.10/24"