+ Responder ao Tópico



  1. #1

    Padrão Iproute2 + iptables + openvpn

    Prezados,

    Já "fritei" a cabeça e não achei solução para o caso abaixo:
    Em meu servidor tenho 2 link, 1 para navegação e outro para uma VPN, utilizando o iproute marco os pacotes e envio atraves de cada link.
    So que os pacotes que entram atraves do link eth1 na porta 5004 udp insistem em sair pelo eth2.
    Desde já agradeço a ajudar.

    eth0 - rede local
    eth1 - link VPN
    eth2 - link navegação
    porta 5004 - porta VPN

    iptables -t mangle -A OUTPUT -p udp --sport 5004 -j MARK --set-mark 2
    ip rule add fwmark 2 table link1 prio 20
    ip rule add fwmark 3 table link2 prio 21
    ip rule add from x.x.x.x table link1 prio 20
    ip route add x.x.x.x via x.x.x.x dev eth1 table link1
    ip route add default via x.x.x.x table link1
    ip rule add from y.y.y.y table link2 prio 21
    ip route add y.y.y.y via y.y.y.y dev eth2 table link2
    ip route add default via y.y.y.y table link2
    ip route add default via y.y.y.y

  2. #2

    Padrão Re: Iproute2 + iptables + openvpn

    Olá amigo... essa regra do iptables que você colocou ai não vai afetar os pacotes que vem pelo tunel vpn e sim dos pacotes gerados pelo servidor. Ali você diz que os pacotes gerados pelo servidor com porta de origem 5004 protocolo udp receberão uma marcação "2". A chain OUTPUT só afeta pacotes gerados pelo próprio servidor... para pegar os pacotes que vem pelo tunel (uma interface a parte) você precisa usar a chain forward.

    As chains INPUT e OUTPUT são para os pacotes que são direcionados diretamente para o servidor e os pacotes gerados pelo servidor para a rede. A chain FORWARD é responsável por tratar os pacotes que são destinados para outros equipamentos que não seja ele mesmo.
    Última edição por zenun; 08-06-2010 às 13:55. Razão: alteração