+ Responder ao Tópico



  1. #1
    mltomas
    Visitante

    Padrão Roteamento de dois links no linux

    Olá Pessoal,
    coloquei dois links no meu servidor...


    tenho um servidor que faz serviços de email e proxy.
    Está ligado a um link de rádio.. está funcionando tudo certo.. roteamento etc..
    coloquei nele mais um link (speedy), para melhorar navegação, ai acabou com tudo tudo..
    o roteamento padrão foi pro speedy.. (o que deve acontecer mesmo) eu consigo navegar pelo speedy..mas os emails devem ser enviados e 'devem chegar' pela outra placa de rede.. e isso não acontece. eu nem consigo pingar mais a outra placa de fora da minha rede...só de dentro.O que eu precisop nem é fazer balanceamento de carga..so queria que a outra placa respondesse.. e os pacotes do servidor de email saissem e entrassem por ela, pois ela é o ip do server d e email..
    ou seja meu servidor de email pára de funcionar quando ligo os dois links.

    estes são meus códigos:
    eth0 = rede interna
    eth1 = link a radio
    eth2 = speedy

    # Resetando o Firewall
    echo -n "Resetando o firewall..........."
    $IPTABLES -F
    $IPTABLES -X
    $IPTABLES -Z

    $IPTABLES -P INPUT ACCEPT
    $IPTABLES -P FORWARD ACCEPT
    $IPTABLES -P OUTPUT ACCEPT
    echo " [OK]"


    # Habilitando o roteamento de pacotes:
    echo -n "Habilitando o roteamento......."
    echo "1" > /proc/sys/net/ipv4/ip_forward
    echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

    # Liberando a chain INPUT para o localhost:
    echo -n "Liberando acesso do localhost.."
    $IPTABLES -A INPUT -i lo -j ACCEPT
    $IPTABLES -A OUTPUT -o lo -j ACCEPT
    $IPTABLES -A INPUT -i eth0 -p icmp -j ACCEPT
    $IPTABLES -A INPUT -i eth1 -p icmp -j ACCEPT
    $IPTABLES -A INPUT -i eth2 -p icmp -j ACCEPT
    echo " [OK]"

    # Regras do FORWARD
    echo -n "Habilitando o Forward............."
    $IPTABLES -A FORWARD -i eth0 -o eth1 -j ACCEPT
    #IPTABLES -A FORWARD -i eth0 -o eth2 -j ACCEPT
    echo " [OK]"


    # Mantendo conexoes ativas:
    echo -n "Manutencao de conexoes ativas..."
    $IPTABLES -A FORWARD -i eth1 -o eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
    $IPTABLES -A FORWARD -i eth2 -o eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
    echo " [OK]"

    echo -n "Habilitando o Masquerade.........."
    iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
    iptables -t nat -A POSTROUTING -o eth2 -j MASQUERADE
    echo " [OK]"




    # REDIRECT
    echo -n "Proxy transparente................"
    $IPTABLES -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128
    echo " [OK]"

    # ---------- # REGRAS DE DE ROTEAMENTO # ------------ #

    iptables -t mangle -A PREROUTING -i eth0 -p tcp --dport 25 -j MARK --set-mark 2
    iptables -t mangle -A PREROUTING -i eth0 -p tcp --dport 110 -j MARK --set-mark 2
    iptables -t mangle -A OUTPUT -p tcp --dport 25 -j MARK --set-mark 2
    iptables -t mangle -A OUTPUT -p tcp --dport 110 -j MARK --set-mark 2

    # Joga servicos de e-mail (pacotes marcados com 2) para o ADSL2
    ip rule add fwmark 2 table 20 prio 20
    ip route add default via xxx.xxx.xx.105 dev eth1 table 20

    # Atualiza tabela de roteamento
    # ------------------------------------------------------------
    ip route flush cache



    # ---------- # FIM DAS REGRAS DE ROTEAMENTO # ------------ #






    Sem mais, agradeco antecipadamente a ajuda de todos...

  2. #2

    Padrão Roteamento de dois links no linux

    Ola...

    Porque não faz ao contrario, mantem como estava (o Wireless como GW padrão) e redireciona a porta 80 para o speedy (e outras que quiser), vai funcionar...

    Exemplo:

    iptables -A PREROUTING -s sua_rede -t mangle -p tcp --dport 80 -j MARK --set-mark 1

    ip rule add fwmark 1 table www
    ip route add default table www via IP_speedy dev eth2
    ip route flush cache

    iptables -t nat -A POSTROUTING -s sua_rede -j MASQUERADE -o eth2

    [];

  3. #3
    marcosddc
    Visitante

    Padrão Roteamento de dois links no linux

    vc especifico a eth na tabela de roteamento ....e o correto seria vc colocar o gateway do link de radio ...pois como vc coloco o speedy por utimo o roteamento padrao eh do speedy ....coloca o gateway ao invez de expecificar qual eth bai sair que td vai funcuionar posta ai o resultado da galera

    o meu esta assim:
    iptables -t mangle -A PREROUTING -s 10.0.0.0/24 -p tcp -m tcp --dport 1025:65000 -j MARK --set-mark 2
    ip rule add pref 22 fwmark 2 table 22
    ip route add table 22 default via 192.168.111.112