[FUG-BR] Source Nat temporário no FreeBSD

jeimerson jeimerson em bol.com.br
Quinta Junho 5 13:50:00 BRT 2014


   Se vai ser apenas para esta finalidade.

   Usa o ipfw mesmo.

   Â

   Abs

   Â
     __________________________________________________________________

   De: thiagoapadua em yahoo.com.br
   Enviada: Quinta-feira, 5 de Junho de 2014 13:46
   Para: freebsd em fug.com.br
   Assunto: [FUG-BR] Source Nat temporário no FreeBSD
   Bom, já uqe eu vou ter que rebootar de qq jeito então hehehe, por
   causa
   do kernel que tenho que habilitar o DIVERT, seria melhor então eu
   habilitar o PF ao invés de usar o natd ?
   Só reforçando, que só vou fazer essa regra pra acessar meus radios,
   depois não vou usar mais nat nehum nessa maquina.
   Em 05-06-2014 09:49, jeimerson escreveu:
   > 21/01/01 18:29 - Como usar o NATD no FreeBSD com o ipfw
   >
   > Denis S. Silva
   > # $FreeBSD: 0.2 2000/01/21 01:33:01 dennix Exp $
   >
   > Como usar o NATD (network address translator) no FreeBSD com o ipfw
   >
   > Breve introducao;
   > Recompilando o kernel;
   > Configuracao:
   > Servidor;
   > Estacoes;
   > Testando;
   >
   > Breve introducao;
   > O NAT funciona como um proxy transparente, tambem conhecido como
   > IP Masquerading ele ira funcionar como um roteador para uma pequena
   LAN,
   > oque significa depois de configurar a sua maquina bsd como gateway,
   > voce pode (apartir de outras maquinas em sua rede) surfar na Internet
   > utilizando um IP Valido(** ip valido para a internet**)
   > Em outras palavras faz com que voce possa acessar a InterNet com uma
   > unica conexao dedicada e varios micros ligados em LAN (rede local),
   > atraves de uma conexao PROXY*.
   >
   > Esse "how-to" eh para a seguinte configuracao
   > O funcionamento do natd eh parecido com o no Wingate(windows),
   > Ipchains(linux).
   > O esquema seria algo proximo de:
   >
   > +------
   > + pc1 + ---
   > +------ |
   > + pc2 + ---
   > +------ | +-----+ ++++++++++++
   > + pc3 + --- ++++++++ BSD +++++++ Internet +
   > +-----+ | +-----+ ++++++++++++
   > + pc3 + ---
   > +-----+ |
   > + pc4 + ---
   > +-----+
   >
   >
   > rem> Visao geral da configuracao do BSD:
   > rem> Subistitua o 200.x.x.1/255.255.255.224 pelo seu IP valido e sua
   > rem> Netmask correspondente
   > ed0 - 200.x.x.1 / 255.255.255.224
   > ed1 - 192.168.0.1 / 255.255.255.0
   > gateway - 200.x.x.2
   > dns - 200.x.x.3
   >
   > pcX:
   > IP 192.168.0.10
   > Netmask 255.255.255.0
   > Gateway 192.168.0.1
   > DNS 200.x.x.3
   >
   > BSD - A maquina FreeBSD
   > pcX - Maquina cliente podendo ser Windows, OS/2, BeOS e/ou qquer
   outro
   > que suporte TCP/IP
   >
   > Uma explicacao simples sobre a faixa de IP's disponivel para
   intranet/rede
   > local (IANA) de acordo com a RFC1597
   > No nosso exemplo utilizamos a Classe C (192.168.0.0)
   >
   > Classe De Rede Netmask Endereco De Rede
   > A 255.0.0.0 10.0.0.0 - 10.255.255.255
   > B 255.255.0.0 172.16.0.0 - 172.31.255.255
   > C 255.255.255.0 192.168.0.0 - 192.168.255.255
   >
   > Explicacao sobre termos usados no artigo "shell>", "edit>" e "rem>":
   > shell> sua shell (c shell, bash, korn, ...)
   > edit> seu editor de textos preferido (ee, vi, pico, ...)
   > rem> comentarios
   >
   > Recompilando o kernel
   > ---------------------
   >
   > rem> Eh necessario recompilar o kernel adicionando as seguintes
   opcoes:
   > edit> /usr/src/sys/i386/conf/NATD
   > #
   > # NATD -- FreeBSD/i386
   > # FreeBSD 4.2
   > #
   > # $FreeBSD: src/sys/i386/conf/NATD,v 1.0 2000/01/21 13:16:07 dennix
   Exp $
   > options INCLUDE_CONFIG_FILE
   > options IPDIVERT
   > options IPFIREWALL #firewall
   > options IPFIREWALL_FORWARD #enable transparent proxy support
   > options IPFIREWALL_DEFAULT_TO_ACCEPT #allow everything by default
   > options TCP_DROP_SYNFIN #drop TCP packets with SYN+FIN
   > options TCP_RESTRICT_RST #restrict emission of TCP RST
   > #options IPFIREWALL_VERBOSE #print information about
   > #options IPFIREWALL_VERBOSE_LIMIT=100 #limit verbosity
   >
   > Configuracao
   > ------------
   >
   > Configuracao do Servidor:
   >
   > edit> /etc/rc.conf
   > natd_enable="YES"
   > natd_interface="ed0"
   > natd_flags="-l -f /etc/natd.conf"
   > gateway_enable="YES"
   > firewall_enable="YES"
   > firewall_type="UNKNOW"
   > firewall_quiet="YES"
   > network_interfaces="ed0 ed1 lo0"
   > ifconfig_ed0="inet 200.x.x.1 media netmask 255.255.255.224"
   > ifconfig_ed1="inet 192.168.0.1 netmask 255.255.255.0"
   > defaultrouter="200.x.x.2"
   > hostname="bsdbox"
   >
   > edit> /etc/natd.conf
   > # qual a placa de rede que tem conexao com a internet
   > interface ed0
   > # para funcionar o ftp/dcc eh necessario as linhas abaixo
   > dynamic yes
   > same_ports yes
   > use_sockets yes
   >
   > edit> /etc/rc.local
   > /sbin/ipfw -f flush
   > /sbin/ipfw add divert natd all from any to any via ed0
   > /sbin/ipfw add pass all from any to any
   >
   > rem> depois de fazer todas essas configuracoes no servidor reboote-o
   >
   > Configuracao das Estacoes clientes:
   > rem> exemplo de configuracao
   > rem> IP: 192.168.0.2
   > rem> Netmask: 255.255.255.0
   > rem> Gateway: 192.168.0.1
   >
   > Testando
   > --------
   > rem> Para testar tente pingar de uma estacao para fora da rede
   > rem> pingado de uma maquina windows
   > C:\WINDOWS\Desktop>ping free.bsd.com.br
   >
   > Disparando contra free.bsd.com.br [200.243.51.4] com 32 bytes de
   dados:
   >
   > Resposta de 200.243.51.4:bytes=32 tempo=83ms Tempo de vida=249
   > Resposta de 200.243.51.4:bytes=32 tempo=68ms Tempo de vida=249
   > Resposta de 200.243.51.4:bytes=32 tempo=83ms Tempo de vida=249
   > Resposta de 200.243.51.4:bytes=32 tempo=68ms Tempo de vida=249
   >
   > Estat?sticas do Ping para 200.243.51.4:
   > Pacotes: Enviados = 4, Recebidos = 4, Perdidos = 0 (0% de perda),
   > Tempos aproximados de ida e volta em milissegundos:
   > M?nimo = 68ms, Máximo = 83ms, Média = 75ms
   >
   > C:\WINDOWS\Desktop> rem> pingando de uma maquina bsd
   > pupa# ping free.bsd.com.br
   > PING free.bsd.com.br (200.243.51.4): 56 data bytes
   > 64 bytes from 200.243.51.4: icmp_seq=0 ttl=249 time=64.093 ms
   > 64 bytes from 200.243.51.4: icmp_seq=1 ttl=249 time=87.913 ms
   > 64 bytes from 200.243.51.4: icmp_seq=2 ttl=249 time=73.586 ms
   > 64 bytes from 200.243.51.4: icmp_seq=3 ttl=249 time=65.479 ms
   > ^C
   > --- free.bsd.com.br ping statistics ---
   > 4 packets transmitted, 4 packets received, 0% packet loss
   > round-trip min/avg/max/stddev = 64.093/72.768/87.913/9.466 ms
   >
   > rem> se a saida for algo assim ta funcionando
   >
   > ---
   > Paz profunda,
   > Denis S. Silva
   >
   > ?
   >
   > Fonte [1]www.free.bsd.com.br
   > __________________________________________________________________
   >
   > De: thiagoapadua em yahoo.com.br
   > Enviada: Quinta-feira, 5 de Junho de 2014 08:58
   > Para: freebsd em fug.com.br
   > Assunto: [FUG-BR] Source Nat temporário no FreeBSD
   > Só complementando, tenho o IPFW habilitado.
   > Em 05-06-2014 08:45, Thiago Andrighetti escreveu:
   > > Olá!
   > >
   > > Já adianto que sou novo em FreeBSD, minha experiência vem do
   Linux
   > e Mikrotik.
   > > Coloquei em funcionamento um FreeBSD com Openbgpd para ser meu
   > roteador de borda, tudo certo e funcionando.
   > > O que acontece, é que a interface que recebe meu link esta ligada
   em
   > um radio, pois o link chega de longe, e esses
   > > radios foram configurados por outra pessoa, eles só estão com IP,
   > não tem gateway configurado. Como consequencia
   > >
   > > do FreeBsd eu pingo ele, pois tenho um ip na mesma faixa, mas de
   > outras máquinas que estão antes do FreeBSD não
   > >
   > > consigo acessar esses radios.
   > > No Linux ou Mikrotik eu resolveria fazendo um SNAT de tudo que vai
   > pro ip do radio mudando a origem do pacote
   > > para o ip que está na placa do FreeBSD, na verdade era isso que eu
   > fazia no Mikrotik.
   > > Mas no FreeBSD fiquei meio perdido ainda nesta parte de NAT, até
   nem
   > habilitei nada de natd no rc.conf pois não
   > > imaginei que iria usar, esqueci desses radios benditos.
   > >
   > > Tem alguma regra que eu possa fazer essa mudança de origem de
   > pacote, pra eu poder acessar esses radios e colocar
   > > o bendito gateway correto?
   > >
   > > Queria ver algo só temporário, pra não ter nat nenhum no router
   > freebsd.
   > >
   > > Desculpem o tamanho da mensagem, e obrigado.
   > >
   > >
   > >
   > -------------------------
   > Histórico: [1][2]http://www.fug.com.br/historico/html/freebsd/
   > Sair da lista: [2][3]https://www.fug.com.br/mailman/listinfo/freebsd
   >
   > References
   >
   > 1. [4]http://www.fug.com.br/historico/html/freebsd/
   > 2. [5]https://www.fug.com.br/mailman/listinfo/freebsd
   >
   >
   > -------------------------
   > Histórico: [6]http://www.fug.com.br/historico/html/freebsd/
   > Sair da lista: [7]https://www.fug.com.br/mailman/listinfo/freebsd
   -------------------------
   Histórico: [8]http://www.fug.com.br/historico/html/freebsd/
   Sair da lista: [9]https://www.fug.com.br/mailman/listinfo/freebsd

References

   1. http://www.free.bsd.com.br/
   2. http://www.fug.com.br/historico/html/freebsd/
   3. https://www.fug.com.br/mailman/listinfo/freebsd
   4. http://www.fug.com.br/historico/html/freebsd/
   5. https://www.fug.com.br/mailman/listinfo/freebsd
   6. http://www.fug.com.br/historico/html/freebsd/
   7. https://www.fug.com.br/mailman/listinfo/freebsd
   8. http://www.fug.com.br/historico/html/freebsd/
   9. https://www.fug.com.br/mailman/listinfo/freebsd


Mais detalhes sobre a lista de discussão freebsd