[FUG-BR] NAT separado por rede

Gelsimauro Batista dos Santos gbs em pollynet.com.br
Ter Jul 26 22:04:16 BRT 2005


Veja abaixo uma solução que usei em um Provedor, voce pode adaptar a sua 
necessidade.

Duas interfaces de NAT FreeBSD

Veja que a configuração acima determina que temos duas interface de rede 
cada uma dedicada a um link para fazer NAT.

Crie um diretório com o nome “gbs” dentro de /etc/ ou o nome que melhor lhe 
convier "mkdir /etc/gbs", depois crie os seguintes arquivos de configurações 
detro desse diretorio. 

1- "ee /etc/gbs/natd.conf" com o conteúdo abaixo
dynamic yes
same_ports yes
use_sockets yes

2- "ee /etc/gbs/rc.filters" com o conteúdo abaixo
#!/bin/sh
/sbin/ipfw -f flush
/sbin/ipfw add 51 allow ip from any to any via lo0
/sbin/ipfw add 52 deny ip from any to 127.0.0.0/8

/sbin/natd -s -n rl0 -p 8668
/sbin/natd -s -n rl1 -p 8669 

/sbin/ipfw add 53 divert 8668 all from any to 100.100.100.2 in
/sbin/ipfw add 54 divert 8668 all from 10.0.0.30 to any out
/sbin/ipfw add 55 fwd 200.200.200.1 all from 200.200.200.2 to any
/sbin/ipfw add 56 divert 8669 all from any to 200.200.200.2 in
/sbin/ipfw add 57 divert 8669 all from 10.0.0.15 to any out

A regra 51 em questão, permite todo tráfego proveniente da interface de 
loopback (a lo0).
A regra 52 bloqueia todo o tráfego direcionado à rede localhost (127.0.0.0).
A regra 51 é necessária pra permitir comunicação inter-processos locais 
(local IPC), e a regra 52 evita que qualquer pacote externo adentre o 
endereço de host local (localhost address), que é o endereço de loopback, 
protegendo assim o tráfego local.

As linhas "/sbin/ natd -s -n rl0 -p 8668" e "/sbin/ natd -s -n rl1 -p 8669" 
indica que a porta NAT da rl0 será 8668 e 8669 para a rl1.

Já a regra 53 enviará todos os pacotes que irão ser recebidos de algum pela 
porta 8668 que a rl0 entrarão pelo IP 100.100.100.2. E a 54 que o IP 
10.0.0.3 fará NAT pela porta 8668 nesse caso a rl0 será a interface de saída 
dos pacotes.

A regra 55 diz que todos os pacotes destinados a 200.200.200.2 serão 
enviados para 200.200.200.1. Essa regra que trabalhara como segundo gateway 
direcionara os pacotes para LINK2.
A regra 56 que enviará todos os pacotes que irão ser recebidos de algum pela 
porta 8669 que a rl1, entrarão pelo IP 200.200.200.2. e a 57 que o IP 
10.0.0.4 fará NAT pela porta 8669 nesse caso a rl1 será a interface de saída 
dos pacotes.


3 - "ee /etc/gbs/iniciar.gbs" dentro contem os comando que irão iniciar os 
outros arquivos
/sbin/natd -f /etc/gbs/natd.conf
/bin/sh /etc/gbs/rc.filters


_____________________________________________________________________________

On Tue, 26 Jul 2005 11:31:47 -0300 (BRST), Vitor Renato Alves de Brito wrote
> Olá Pessoal,
> 
> Tenho um servidor com 2 saídas IP mais 1 interface interna e preciso 
> fazer o seguinte:
> 
> tenho um servidor na rede da interface xl0 e preciso redirecionar os
> pacotes da interface xl2 em determinadas portas para o servidor na 
> xl0 e o resto para a xl1.
> 
> Exemplo:
> rede xl0 200.0.0.0 ip xl0 200.0.0.1
> rede xl1 300.0.0.0 ip xl1 300.0.0.1
> rede xl2 192.168.0.0 ip xl2 192.168.0.1
> rede xl2 192.168.1.0 ip xl2 192.168.1.1
> 
> fazer nat na xl0 de tudo que vai de 192.168.0.0/24 para o servidor
> 200.0.0.2 na porta 25 e o resto fazer nat na xl1. ou seja, tudo que for
> SMTP para o servidor 200.0.0.2 deverá ser feito nat na xl0 e todo o
> restante do trafego deverá ser feito nat na xl1.
> 
> fazer nat na xl0 de tudo que vai de 192.168.1.0/24 na xl0 (esta é 
> fácil).
> 
> Já procurei na internet exemplos de divert com ipfw na net e só 
> achei o famoso any to any via ${if_externa}.
> 
> Até mais,
> 
> ---
> Vitor Renato Alves de Brito - System Manager
> Arte Final Provedor Internet - http://www.artefinal.com.br
> Alfenas - Sul de Minas Gerais
> 
> ---
> Esta mensagem foi verificada pelo e-mail protegido Arte Final
> Antivírus: F-Prot / Versão: 4.4.7 / Atualizado em: 26-Jul-2005
> Proteja o seu e-mail com a Arte Final - http://www.artefinal.com.br
> 
> _______________________________________________
> Freebsd mailing list
> Freebsd em fug.com.br
> http://mail.fug.com.br/mailman/listinfo/freebsd_fug.com.br


Gelsimauro Batista dos Santos


_______________________________________________
Freebsd mailing list
Freebsd em fug.com.br
http://mail.fug.com.br/mailman/listinfo/freebsd_fug.com.br




Mais detalhes sobre a lista de discussão freebsd