+ Responder ao Tópico



  1. #1

    Padrão o que pode estar errado??

    o que pode estar errado nesse script de rotas??? estou tentando fazer alguns clientes sairem por um determinado link e outros por outro link mais nao estou conseguindo ... apensa os clientes do link1 funcionam

    #!/bin/bash
    ######################################### arquivo de rotas - iproute
    ## rede local
    lan_iface=eth2
    lan_rede=10.10.254.0/30
    lan_gw=10.10.254.2
    lan_ip_local=10.10.254.1
    ## link1
    link1_iface=eth1
    link1_rede=10.10.250.0/30
    link1_gw=10.10.250.2
    link1_ip_local=10.10.250.1
    ## link2
    link2_iface=eth0
    link2_rede=10.10.250.4/30
    link2_gw=10.10.250.6
    link2_ip_local=10.10.250.5
    ### resetar tabelas de rotas ###
    echo "255 local" > /etc/iproute2/rt_tables
    echo "254 main" >> /etc/iproute2/rt_tables
    echo "253 default" >> /etc/iproute2/rt_tables
    echo "0 unspec" >> /etc/iproute2/rt_tables
    echo "20 link1" >> /etc/iproute2/rt_tables
    echo "30 link2" >> /etc/iproute2/rt_tables
    ### remover rotas padrao - se houver ###
    ip route del default &> /dev/null
    ip route del default &> /dev/null
    ip route del default &> /dev/null
    ## remover rotas antigas ##
    ip rule del from all &> /dev/null
    ### remover tabelas ###
    ip rule del lookup link1 &> /dev/null
    ip rule del lookup link1 &> /dev/null
    ip rule del lookup link1 &> /dev/null
    ip rule del lookup link2 &> /dev/null
    ip rule del lookup link2 &> /dev/null
    ip rule del lookup link2 &> /dev/null
    ip rule del table main &> /dev/null
    ip rule del table main &> /dev/null
    ip rule del table main &> /dev/null
    ip rule del table main &> /dev/null
    ### adicionar tabelas com prioridades ###
    ip rule add table main prio 10
    ip rule add table link1 prio 20
    ip rule add table link2 prio 30

    ## adicionar rotas de clintes
    for ipr in `cat /scripts/iplink1`
    do
    ip route del $ipr &> /dev/null
    ip route add $ipr via $lan_gw dev $lan_iface
    done;
    for ipr in `cat /scripts/iplink2`
    do
    ip route del $ipr &> /dev/null
    ip route add $ipr via $lan_gw dev $lan_iface
    done;

    ### adicionar rotas nas tableas ###
    # tabela link1
    # regras da tabela
    ip rule del from $link1_ip_local &> /dev/null
    ip rule add from $link1_ip_local table link1 prio 20
    # regras de clientes
    for ips in `cat /scripts/iplink1`
    do
    ip rule del from $ip &> /dev/null
    ip rule add from $ip table link1 prio 20
    done;
    # adicionar rotas
    ip route add $link1_ip_local via $link1_gw dev $link1_iface table link1
    ip route add default via $link1_gw table link1
    # tabela link2
    # regras da tabela
    ip rule del from $link2_ip_local &> /dev/null
    ip rule add from $link2_ip_local table link2 prio 30
    regras de clientes
    for ips in `cat /scripts/iplink2`
    do
    ip rule del from $ip &> /dev/null
    ip rule add from $ip table link2 prio 30
    done;
    # adicionar regras
    ip route add $link2_ip_local via $link2_gw dev $link2_iface table link2
    ip route add default via $link2_gw table link2
    ### aplicar mudancas ###
    ip route flush cache
    ######################################### arquivo de rotas - iproute FIM

  2. #2

    Padrão

    Boa noite cara,

    seguinte, não tive paciência para ler tudo
    Simplesmente você precisa fazer:

    ip rule add from $IP table $tb0

    tipo, cliente 66 pelo link zero:

    ip rule add from ${IP[66]} table $tb0

    e na tabela $tb0 deve conter todos as rotas necessárias a passagem do pacote da rede interna a externa. Se não conseguir volte que tentamos ajudar mais! valeu!