+ Responder ao Tópico



  1. #1
    slipkorn
    Visitante

    Padrão Problema roteamento....

    Estou com o seguinte problema...
    Tenho interfaces de rede no meu servidor...

    eth0-200.000.000.000 - Ip valido fixo
    eth1-200.111.111.111 - ip valido adsl ppp0
    eth2 - 192.168.254.254 - rede local

    Eu quero fazer o seguinte na eth0 eu quero rodar os servidores (dns,e-mail,ftp,etc...)..
    Eu quero que o link adsl fique padrao no fw e tambem quero compartilhar a eth1 o link adsl na minha rede local...

    O problema eh o seguinte quando eu inicio a adsl - atraves do "adsl-start"... O meu ip valido da eth0 nao responde mais....
    O link adsl funciona normalmente no fw e também é visivel externamente (ping)
    Agora o IP fixo nao fica visivel externamente(ping)...

    o que eu devo fazer?

    Obs: ainda nao levantei o firewall... pretendo usar o script shorewall
    Obrigado...

  2. #2

    Padrão Problema roteamento....

    nao enxerga é uma coisa, o que acontece é que ele muda sua rota default, e nao o ip desaparece.

    leia sobre advanced-routing, routing, e iptables.

  3. #3
    slipkorn
    Visitante

    Padrão Problema roteamento....

    Achei um tutorial de banlanceamento de links... gostaria de saber o que esta errado em minha configuracao... eu removi algumas regras do firewall... vo configura-las atraves do shorewall...

    Segue o script:

    #---------------------------- /etc/iproute2/rt_tables ------------------------
    #
    # reserved values
    #
    #255 local
    #254 main
    #253 default
    #0 unspec

    #
    #local
    #
    #1 inr.ruhep
    10 ipfixo
    11 adsl1
    30 adsl
    #---------------------------- /etc/iproute2/rt_tables ------------------------


    ---------------------------- /etc/firewall/firewall.sh --------------------------
    #!/bin/sh
    ######################################
    # Firewall for ADSL Velox Telemar #
    # By Leandro R. [email protected] #
    # OBS: Balanceamento de trafego para #
    # 2 links ADSL #
    ######################################

    # Legenda
    #
    # eth0 -> Rede interna (192.168.254.254/24)
    # eth1 -> ADSL (192.168.0.1/24)
    # eth2 -> IPFIXO (xxx.xxx.xxx.97/27)

    # Variaveis
    #DNS1="200.202.93.75"
    #DNS2="200.202.0.34"

    # Carregando os modulos basicos:

    #echo -n "Carregando os modulos..."
    #modprobe ip_tables
    #modprobe iptable_filter
    #modprobe ip_conntrack
    #modprobe ip_conntrack_ftp
    #modprobe iptable_nat
    #modprobe ip_nat_ftp
    #modprobe ipt_LOG
    #modprobe ipt_state
    #modprobe ipt_MASQUERADE
    #echo " [OK]"

    # Resetando o Firewall:

    echo -n "Resetando o firewall..."
    iptables -F
    iptables -Z
    iptables -X

    #iptables -t nat -F
    #iptables -P INPUT DROP
    #iptables -P FORWARD DROP
    #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

    echo " [OK]"

    # Liberando a chain INPUT para o localhost:

    # echo -n "Liberando acesso do localhost..."
    # iptables -A INPUT -p ALL -s 127.0.0.1 -i lo -j ACCEPT
    # iptables -A INPUT -p ALL -s 192.168.0.1 -i lo -j ACCEPT
    # iptables -A INPUT -p ALL -s 192.168.1.2 -i lo -j ACCEPT
    # iptables -A INPUT -p ALL -s 192.168.2.2 -i lo -j ACCEPT
    # echo " [OK]"

    # Otimizando o firewall:

    # echo -n "Otimizando o roteamento..."
    # iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
    # echo " [OK]"

    # Liberando resposta dos servidores DNS:

    # echo -n "Liberando servidores DNS..."
    # iptables -A INPUT -p udp -s 192.168.0.0/24 --sport 53 -d $DNS1 -j ACCEPT
    # iptables -A INPUT -p udp -s 192.168.0.0/24 --sport 53 -d $DNS2 -j ACCEPT
    # echo " [OK]"

    # DHCP Server

    # echo -n "Liberando servidor DHCP..."
    # iptables -A INPUT -p udp -s 192.168.0.0/24 --sport 79 -d 192.168.0.1 -j ACCEPT
    # echo " [OK]"

    # Descartar pacotes fragmentados:

    # echo -n "Bloqueando pacotes fragmentados..."
    # iptables -A INPUT -i eth1 -f -j LOG --log-prefix "Pacote fragmentado: "
    # iptables -A INPUT -i eth1 -f -j DROP
    # iptables -A INPUT -i eth2 -f -j LOG --log-prefix "Pacote Fragmentado: "
    # iptables -A INPUT -i eth2 -f -j DROP
    # echo " [OK]"

    # Bloqueando ataques do tipo SPOOF de IP:

    # echo -n "Bloqueando spoofing..."
    # iptables -A INPUT -i eth1 -s 10.0.0.0/8 -j DROP
    # iptables -A INPUT -i eth1 -s 172.16.0.0/12 -j DROP
    # iptables -A INPUT -i eth1 -s 224.0.0.0/4 -j DROP

    # iptables -A INPUT -i eth1 -s 240.0.0.0/5 -j DROP
    # echo " [OK]"

    # Liberando alguns acessos por ping:

    # echo -n "Liberando acesso por ping..."
    # iptables -A INPUT -p icmp --icmp-type 8 -i eth0 -j ACCEPT
    # iptables -A INPUT -p icmp -s 192.168.0.0/24 -d 0/0 -j ACCEPT
    # echo " [OK]"

    # Regra para SSH: (opcional)

    # echo -n "Liberando acesso ao SSH..."
    # iptables -A INPUT -p TCP --dport 22 -j ACCEPT
    # echo " [OK]"

    # Regras do FORWARD

    # Descarta pacotes invalidos:

    # echo -n "Descartando pacotes invalidos para reenvio..."
    # iptables -A FORWARD -m state --state INVALID -j DROP
    # echo " [OK]"

    # Mantendo conexoes ativas:

    # echo -n "Manutencao de conexoes ativas..."
    # iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
    # echo " [OK]"

    # Liberando acesso ao DNS para a rede interna (Email):

    # echo -n "Liberando DNS para rede interna..."

    # iptables -A FORWARD -s 192.168.0.0/24 -j ACCEPT

    # iptables -A FORWARD -p udp -s 192.168.0.0/24 -d $DNS1 --dport 53 -j ACCEPT
    # iptables -A FORWARD -p udp -s 192.168.0.0/24 -d $DNS2 --dport 53 -j ACCEPT
    # iptables -A FORWARD -p udp -s $DNS1 --sport 53 -d 192.168.0.0/24 -j ACCEPT
    # iptables -A FORWARD -p udp -s $DNS2 --sport 53 -d 192.168.0.0/24 -j ACCEPT
    # echo " [OK]"

    # Fazendo mascaramento de enderecos IP (NAO NAT):
    # OBS: essa regra eh mutuamente excludente com a proxima, a do NAT
    # ou seja, escolha uma das duas

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

    # Marcando pacotes

    echo -n "Marcando pacotes..."
    iptables -A PREROUTING -t mangle -s 192.168.254.0/24 -d 0/0 -j MARK --set-mark 3
    echo " [OK]"

    # Desabilitando o filtro de pacotes do martian source
    echo -n "Desligando rp_filter..."
    for eee in /proc/sys/net/ipv4/conf/*/rp_filter; do
    echo 0 > $eee
    done
    echo " [OK]"

    # Definindo regras de balanceamento de Link:
    echo -n "Balanceando links..."

    # ADSL #1
    ip route add 192.168.0.0/24 dev eth1 src 192.168.0.1 table adsl1
    #ip route add 192.168.0.0/24 via 192.168.0.1 table velox1
    ip route add default via 192.168.0.254 table adsl1

    # IPFIXO #2
    ip route add xxx.xxx.xxx.96/27 dev eth2 src xxx.xxx.xxx.97 table ipfixo
    #ip route add 192.168.0.0/24 via 192.168.0.1 table velox2
    ip route add default via xxx.xxx.xxx.126 table ipfixo

    # setando na tabela principal de roteamento
    ip route add 192.168.0.0/24 dev eth1 src 192.168.0.1
    ip route add xxx.xxx.xxx.96/27 dev eth2 src xxx.xxx.xxx.97


    # setando a rota preferencial
    ip route add default via 192.168.0.254

    # regras das tabelas
    ip rule add from 192.168.0.1 table adsl1
    ip rule add from xxx.xxx.xxx.97 table ipfixo

    # balanceamento de link
    ip rule add fwmark 3 lookup adsl prio 3
    ip route add default table adsl nexthop via 192.168.0.254 dev eth1 \
    weight 1 nexthop via xxx.xxx.xxx.126 dev eth2 weight 1
    #OBS: o comando assima deve ser digitado em uma só linha, ou
    # usando o caractere \ para dividí-la.

    # flush no roteamento
    ip route flush cache
    echo " [OK]"
    sleep 3
    #---------------------------- /etc/firewall/firewall.sh --------------------------


    Alguem pode me ajudar????