+ Responder ao Tópico



  1. #1

    Padrão Balanceamento de Link + Redundancia + Acesso remoto rede interna

    Depois de modificar meu servidor Kurumin power full metal tech 7 para balanceamento de link + Redundância comecei a ter os seguintes problemas...

    1) Não vejo algumas máquinas quando mando o programa scanear os micros disponiveis.
    2) Identifica o serviço no link1 e depois para de identificar, logo passa para o link 2 alternando aleatóriamente o link para conexão.
    3) Não ve o serviço disponivel nos 2 links ao mesmo tempo.
    4) Instabilidade na conexão com o serviço logo após conectado.
    5) Site de bancos que usam porta segura como bradesco, banrisul...

    Receita do Bolo usado: How To: Load Balancing & Failover With Dual/ Multi WAN / ADSL / Cable Connections on Linux

    Fiz algumas alterações do script acima onde diz respeito aos nomes das tabelas de roteamento, que fica gvt e brt..

    Caractéristicas da rede:

    Iptables v. 1.4.2
    Kernel v. 2.6.24-etchnhalf.1-486
    Distro. Debian 4.0

    Link 1 = ETH1 = IP 192.168.1.10 GVT cadastrado no dyndns.org como xxxx1.dyndns.org
    Link 2 = ETH2 = IP 192.168.2.10 BRT cadastrado no dyndns.org como xxxx2.dyndns.org
    Link 3 = ETH0 = IP 192.168.0.1 Rede Interna

    Tenho uma rede com aproximadamente 20 computadores, todos estações windows XP, cada estação esta instalado o programa de acesso remoto Radmin server 3, que por sua vez necessita uma porta disponível para conexão remota.

    Cada estação possui ip fixo ex.:

    192.168.0.2 porta de acesso do radmin 4892
    192.168.0.3 porta de acesso do radmin 4893

    O programa radmin cliente 3 possibilita scanear as estações cadastradas, onde apenas é necessário configurar o ip e a porta da estação, no caso o acesso externo é feito por meio do serviço de DNS Dinamico.

    Ja tentei marcar as portas mas não tive sucesso. A seguir mostro a configuração atual.

    ############################ rc.local ############################
    ROTABRT="192.168.2.1"
    ROTAGVT="192.168.1.1"
    IP_REDEBRT="192.168.1.10"
    IP_REDEGVT="192.168.2.10"
    ROTADEL="route del default gw"

    echo "Deleta rotas padrão"
    $ROTADEL $ROTAGVT
    $ROTADEL $ROTABRT
    echo "OK"

    ip route flush table gvt
    ip route flush table brt
    ip route add 192.168.1.0/24 dev eth1 src 192.168.1.10 table gvt
    ip route add default via 192.168.1.1 table gvt
    ip route add 192.168.2.0/24 dev eth2 src 192.168.2.10 table brt
    ip route add default via 192.168.2.1 table brt
    ip rule add from 192.168.1.10 table gvt
    ip rule add from 192.168.2.10 table brt
    route add -host xxxx1.dyndns.org gw 192.168.1.1 dev eth1
    route add -host xxxx2.dyndns.org gw 192.168.2.1 dev eth2
    ip rule add fwmark gvt lookup T1 prio 3 #marca os pacotes para sair pelo link gvt
    ip rule add fwmark brt lookup T2 prio 3 #marca os pacotes para sair pelo link brt
    ip route add default scope global nexthop via 192.168.1.1 dev eth1 weight 1 nexthop via 192.168.2.1 dev eth2 weight 1
    ip route flush cache

    ############################## firewal ##############################

    iptables -I PREROUTING -t mangle -s xxxx1.dyndns.org -j MARK --set-mark gvt
    iptables -I PREROUTING -t mangle -s xxxx2.dyndns.org -j MARK --set-mark brt
    iptables -I PREROUTING -t mangle -d xxxx1.dyndns.org -j MARK --set-mark gvt
    iptables -I PREROUTING -t mangle -d xxxx2.dyndns.org -j MARK --set-mark brt

    iptables -I FORWARD -p tcp --dport 4893 -j ACCEPT
    iptables -t nat -I PREROUTING -i eth1 -p tcp --dport 4893 -j DNAT --to-dest 192.168.0.3

    ##############################################

    Bem é isso espero que alguêm tenha uma solução, pois ja tentei de tudo dentro do meu conhecimento.

    Abraços...

    ##############################################
    ##############################################
    ##############################################


    10/11/08 Fim da novela...

    Bom... quase 200 leitores e nenhuma resposta, como sou brasileiro e nao desisto nunca lendo muito na internet e com um pouco de sorte acho que encontrei algumas soluções... então dei umas modificas acima para ficar mais parecido com um tutorial a moda bagual...


    ######### Sites seguros como banrisul e bradesco foi acrescentado #########

    rc.local:###########

    #rota para conectar no site do banrisul, nao basta só fazer marcação com o MARK no iptables

    route add -host www.banrisul.com.br gw 192.168.1.1 dev eth1

    no squid:##########

    #É interessante marcar a saída das conexões do squid para um determinado link:

    acl gvt scr 192.168.0.0/24
    tcp_outgoing_address 192.168.1.10 gvt

    no firewall:#########

    #marcando as portas 80, 443 das conexoes https para os bancos e as portas de acesso da rede interna para o radmin 4893 e 4894, como tenho mais de duas maquinas posso fazer um range tipo 4893 até 4899.. Todas essas porta vão pelo link marcado como 10

    iptables -I PREROUTING -t mangle -i eth0 -s 192.168.0.0/24 -d 0/0 -p tcp -m multiport --dports 80,443,4893:4899 -j MARK --set-mark gvt

    ###Resolvendo o problema de conexão interna do acesso remoto###

    #Desabilitei o acesso por uma das interfaces e acrescentei a regra que estava faltando para tudo dar certo, destaque em negrito..

    #Carregar modulos
    modprobe ipt_mark
    modprobe ipt_MARK

    # Fundamental estar desabilitado para funcionar o roteamento com 2 links
    echo "0" > /proc/sys/net/ipv4/conf/default/rp_filter

    iptables -I FORWARD -p tcp --dport 4893 -j ACCEPT
    iptables -t nat -I PREROUTING -i eth1 -p tcp --dport 4893 -j DNAT --to-dest 192.168.0.3
    iptables -t mangle -A PREROUTING -p tcp -s 192.168.0.3 --sport 4893 -j MARK --set-mark gvt



    Em resumo marquei praticamente as portas de saída tudo pelo link da gvt , inclusive o squid..

    Acho que é isso, qualquer dúvida estamos ai....
    Última edição por info24hs; 10-11-2008 às 23:22.

  2. #2