+ Responder ao Tópico



  1. #1
    Visitante

    Padrão Rotear IPs válidos para rede inválida

    Olá pessoal, já não sei mais onde procurar ajuda...

    Vejam:

    Tenho uma máquina com duas placas de rede:
    eth0=200.243.xx.xx
    eth1=10.10.1.1

    E por traz dessa máquina tem 10 máquinas com os seguintes IPs

    maquina01 eth0=10.10.1.10
    maquina02 eth0=10.10.1.11
    maquina03 eth0=10.10.1.12
    maquina04 eth0=10.10.1.13
    maquina05 eth0=10.10.1.14
    maquina06 eth0=10.10.1.15
    maquina07 eth0=10.10.1.16
    maquina08 eth0=10.10.1.17
    maquina09 eth0=10.10.1.18
    maquina10 eth0=10.10.1.19

    E tenho também 10 IPs válidos sobrando.

    Eu preciso de fazer com que a máquina servidor que é a eth1=10.10.1.1 com IP válido, faça um roteamento passando as máquinas que estão ligadas nele para IP fixo

    Como fazer??? Vocês são minha única esperança!

    Abraços

    email: [url=""mailto:[email protected]<A HREF="mailto:null">null[/url]

    <font size=-1>[ Editado por Anonymous On Date 17-10-2002 em 09:50 ]</font>

  2. #2
    Mr_Mind
    Visitante

    Padrão Rotear IPs válidos para rede inválida

    Muito simples caro amigo e visto que esta&acute; tao desesperado nao hesite em me contactar em caso de mais duvida, mas aqui lhe deixo a minha dica! Espero que o ajude!

    Usando IPtables isto e&acute; tdo muito facil! Tudo passa por um conhecimento de NAT, mais precisamente DNAT.
    O que queremos fazer? Queremos que de um IP externo passe por um "firewall" para uma maquina interna correspondente a esse ip externo como que se o "firewall" fosse transparente.

    Pois bem vamos aplicar um pouco de DNAT! Antes demais um pouco de teoria ..
    O DNAT (Destination NAT) permite que você redireccione pedidos de uma maquina para outra desde que elas estejam em rede. Então vamos la&acute;!

    imaginando que tem 10 ip&acute;s validos:
    200.0.0.2 -> começamos em 2 pois o .1 e&acute; endereço base de rede
    200.0.0.3
    ...
    200.0.0.11

    e o nosso firewal possui o 200.0.0.11 e que por tras dele estao nove computadores com ip&acute;s invalidos, supondo que da rede 10.0.0.0/8.
    Teriam os seguintes IP&acute;s:
    10.0.0.2
    10.0.0.3
    ...
    10.0.0.10


    A partir daqui e&acute; simples ..
    no firewall aplicamos as seguintes regras:

    # aplicar ip&acute;s a uma placa de rede ligada a net
    ifconfig eth0 200.0.0.11 # ip da firewall
    ifconfig eth0:1 200.0.0.2
    ifconfig eth0:2 200.0.0.3
    ...
    ifconfig eth0:9 200.0.0.10

    # nao se esqueça de definir os outros parametros DNS, Gateway, Broadcast, etc.

    # depois os seus pc&acute;s internos têm que passar o firewall para ir pela internet..ou seja deve ser o seu gateway e ao mesmo tempo SNATar as conexões mas ja vamos ver isso mais a frente!

    # para redireccionar TODO o trafego para pc correspondente

    iptables -t nat -A PREROUTING -i eth0:1 -j DNAT --to-destination 10.0.0.2
    ...
    iptables -t nat -A PREROUTING -i eth0:9 -j DNAT --to-destination 10.0.0.10

    # OK!! Ja esta o redireccionamento para dentro mas agora precisamos dizer que ao sair os IP&acute;s internos sao IP&acute;s externos validos! Fazemos entao:

    iptables -t nat -A POSTROUTING -s 10.0.0.2 -o eth0:1 -j DNAT --to 200.0.0.2
    ...
    iptables -t nat -A POSTROUTING -s 10.0.0.10 -o eth0:9 -j DNAT --to 200.0.0.10

    # e ja&acute; esta&acute;!


    Simples nao foi? Leia e releia ate&acute; compreender bem e se precisar de um manual para algumas duvidas tem um muito bom em portugues sobre IPtables em http://focalinux.cipsga.org.br/guia/avancado/ch-fw-iptables.htm . Procura la sobre NAT/DNAT/SNAT e masquerading.

    Não hesite em enviar um email para o meu email (veja na minha info) nem que seja para dizer que correu tudo bem!

    Um abraço e muito boa sorte

    <IMG SRC="images/forum/smilies/icon_biggrin.gif">

    _________________
    After all ... we&acute;re all alike!!

    <font size=-1>[ Editado por Mr_Mind On Date 17-10-2002 em 10:00 ]</font>

  3. #3
    redoctober
    Visitante

    Padrão Rotear IPs válidos para rede inválida

    # nao se esqueça de definir os outros parametros DNS, Gateway, Broadcast, etc.

    Como devo designar o que vc disse acima?

    []&acute;s

  4. #4
    Mr_Mind
    Visitante

    Padrão Rotear IPs válidos para rede inválida

    O DNS voce edita em /etc/resolve.conf!
    O gateway dos seus ip validos (possivelmente teras um router) voce pode definir usando o comando route da seguinte forma: route add default gw ip_do_router
    O broadcast voce define mesmo no ifconfig da seguinte forma: ifconfig eth1 192.168.0.1 broadcast 192.168.0.255 netmask 255.255.255.0, por exemplo!
    Atençao tinha-me esquecido da NETMASK mas aqui reparo o meu erro!!
    Penso que nao precisara de mais nada!!

    Um abraço <IMG SRC="images/forum/smilies/icon_biggrin.gif">

    _________________
    After all ... we&acute;re all alike!!

    <font size=-1>[ Editado por Mr_Mind On Date 17-10-2002 em 10:42 ]</font>

  5. #5
    redoctober
    Visitante

    Padrão Rotear IPs válidos para rede inválida

    Veja o erro que esta ocorrendo quando executo as regras:

    ---
    Try `iptables -h&acute; or &acute;iptables --help&acute; for more information.
    iptables: No chain/target/match by that name
    Warning: wierd character in interface `eth0:2&acute; (No aliases, :, ! or *).
    iptables v1.2.4: Unknown arg `--to--destination&acute;
    Try `iptables -h&acute; or &acute;iptables --help&acute; for more information.
    Warning: wierd character in interface `eth0:2&acute; (No aliases, :, ! or *).
    iptables v1.2.4: Can&acute;t use -o with PREROUTING
    Try `iptables -h&acute; or &acute;iptables --help&acute; for more information.
    ---

    O que pode ser isso?






  6. #6
    Mr_Mind
    Visitante

    Padrão Rotear IPs válidos para rede inválida

    Simplesmente remova os parametros -o eth0:x!

    <IMG SRC="images/forum/smilies/icon_biggrin.gif">

  7. #7
    redoctober
    Visitante

    Padrão Rotear IPs válidos para rede inválida

    ate quando vc fica conectado aqui no site?

  8. #8
    Mr_Mind
    Visitante

    Padrão Rotear IPs válidos para rede inválida

    Ligo-me a este portal as 9am e desligo por volta das 7pm (GMT +1h | Portugal) <IMG SRC="images/forum/smilies/icon_razz.gif">
    Isto no emprego, mudei recentemente de casa e nao tenho net la&acute;! Mas la&acute; para a frente prolongar-se-a&acute; ate&acute; altas horas da noite!

    Um abraço <IMG SRC="images/forum/smilies/icon_biggrin.gif">

  9. #9
    pensador-ce
    Visitante

    Padrão Rotear IPs válidos para rede inválida

    acho q posso te ajudar fera, tenho um arquivo q criei com o nome de firewall, ele faz quase tudo q o amigo falou acima, conecta pelo icq q posso ajudar o amigo com um passo a passo mais básico. <IMG SRC="images/forum/smilies/icon_biggrin.gif">

  10. #10
    Mr_Mind
    Visitante

    Padrão Rotear IPs válidos para rede inválida

    amigo pensador-ce por favor mande esse script para <a href="mailto:[email protected]">[email protected]</a>

    Agradecia muito, um abraço <IMG SRC="images/forum/smilies/icon_biggrin.gif">

  11. #11

    Padrão Rotear IPs válidos para rede inválida

    isto tudo tem bem explicado em

    <a href=www.iptablesbr.cjb.net>www.iptablesbr.cjb.net</a>

  12. #12
    redoctober
    Visitante

    Padrão Rotear IPs válidos para rede inválida

    pra sair os pacotes seria assim:

    iptables -t nat -A POSTROUTING -s 10.10.1.192/8 -o eth0:1 -j SNAT 200.243.54.4/24

    Até aqui certo! E quando o usuário de fora pingar o IP 200.243.54.4, como faço para o ping ir direto a máquina 10.10.1.192?

    []&acute;s

    _________________
    O sábio sabe tudo que diz mais não diz tudo que sabe.

    <font size=-1>[ Editado por redoctober On Date 18-10-2002 em 09:41 ]</font>

  13. #13

    Padrão Rotear IPs válidos para rede inválida

    iptables -t nat -A PREROUTING -s 0/0 -p icmp -d 200.243.54.4/24 -j DNAT --to-destination 10.10.1.192

  14. #14
    redoctober
    Visitante

    Padrão Rotear IPs válidos para rede inválida

    Config da minha máquina:
    eth0=200.243.54.8
    eth1=10.10.1.1

    Eu coloquei o IP válido assim:

    ifconfig eth0:1 200.243.54.4/26


    Veja como está meu script de firewall:

    ----#! /bin/sh
    #
    # carga do iptable

    case "$1" in
    start)
    modprobe ipt_MASQUERADE
    modprobe ip_nat_ftp
    modprobe ip_conntrack_ftp

    echo 1 > /proc/sys/net/ipv4/ip_forward

    iptables -t nat -A PREROUTING -j ACCEPT -p tcp --dport 6667
    iptables -t nat -A PREROUTING -j ACCEPT -p tcp --dport 5190:
    iptables -t nat -A PREROUTING -j ACCEPT -p tcp --dport 1214
    iptables -t nat -A PREROUTING -j ACCEPT -p tcp --dport 1340
    iptables -t nat -A PREROUTING -j ACCEPT -p tcp --dport 1341
    iptables -t nat -A PREROUTING -j ACCEPT -p tcp --dport 53
    iptables -t nat -A PREROUTING -j ACCEPT -p tcp --dport 110
    iptables -t nat -A PREROUTING -j ACCEPT -p tcp --dport 25
    iptables -t nat -A PREROUTING -j ACCEPT -p tcp --dport 21
    iptables -t nat -A PREROUTING -j ACCEPT -p tcp --dport 80

    iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
    iptables -t nat -A POSTROUTING -s 10.10.1.192 -j SNAT --to 200.243.54.4
    iptables -t nat -A PREROUTING -s 0/0 -p tcp -d 200.243.54.4/26 --dport 80 -j DNAT --to 10.10.1.192


    echo 1 > /proc/sys/net/ipv4/ip_forward

    echo -n "Starting Firewall:"
    return=$rc_failed
    sleep 1
    echo -e "$return"
    ;;
    stop)
    echo -n "Shutting down Firewall:"
    iptables -F -t nat
    iptables -F
    ;;
    status)
    echo -n "Checking for Firewall: "
    iptables -L
    iptables -L -t nat
    ;;
    restart)
    $0 stop && $0 start || return=$rc_failed
    ;;
    *)
    echo "Usage: $0 {start|stop|status|restart}"
    exit 1
    esac

    ----

    O que está errado aqui???
    <IMG SRC="images/forum/smilies/icon_confused.gif">

    _________________
    O sábio sabe tudo que diz mais não diz tudo que sabe.

    <font size=-1>[ Editado por redoctober On Date 18-10-2002 em 11:50 ]</font>

  15. #15

    Padrão Rotear IPs válidos para rede inválida

    em vez de vc utilizar o iptables pq vc naum utiliza o rinet para fazer isto por vc desde que as conexão naum utilize UDP pode utilizar tranquilamente eu ja utilizei com o apache e bele...
    Eu tenho um problema deste para resolver e aqui acho que achei a minha soluçao pois tenho que fazer a conexão com uma porta que naum é valida 3205 e 3206, vou testar vamos ver.


    Um abraço,


    Marcos Amorim

  16. #16