Em 05/06/14 13:46, Thiago Andrighetti escreveu: > 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. Opa Thiago,
Eu uso ipfw + pf sendo que o pf eu uso somente para NAT. Para quem veio de Linux eu acho o NAT do pf mais tranquilo de assimilar. No kernel eu costumo habilitar isso abaixo para ipfw e pf: options IPFIREWALL options IPFIREWALL_VERBOSE options IPFIREWALL_VERBOSE_LIMIT=100 options IPFIREWALL_DEFAULT_TO_ACCEPT options IPFIREWALL_NAT options LIBALIAS options DUMMYNET options IPDIVERT # Habilitando PF e ALTQ device pf device pflog device pfsync options ALTQ options ALTQ_CBQ # Class Bases Queuing (CBQ) options ALTQ_RED # Random Early Detection (RED) options ALTQ_RIO # RED In/Out options ALTQ_HFSC # Hierarchical Packet Scheduler (HFSC) options ALTQ_PRIQ # Priority Queuing (PRIQ) options ALTQ_NOPCC # Required for SMP build Abaixo uns exemplos de regras no pf.conf da vida: ext_if = "em0" int_if = "em1" table <masq> persist { 192.168.255.0/24, 10.0.0.0/8, 192.168.173.0/24, 192.168.174.0/24 } set skip on lo0 set limit states 40000 #### NAT 1:1 binat on $ext_if from 192.168.255.2 to any -> 186.xxx.xxx.13 #### NAT redirecionamento rdr on $ext_if proto tcp from any to 186.xxx.xxx.14 port 80 -> 192.168.255.1 port 80 #### NAT N:1 nat on $ext_if from <masq> to any -> 186.xxx.xxx.9 Para testar se tem erro nas regras: pfctl -nf pf.conf Para carregar as regras: pfctl -f pf.conf Para mostrar as regras: pfctl -s nat Bem isso é só para ajudar mas o ideal é você estudar o PF mesmo porque tem muito mas muito mais opções. > > > 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 www.free.bsd.com.br >> __________________________________________________________________ >> >> De: thiagoapa...@yahoo.com.br >> Enviada: Quinta-feira, 5 de Junho de 2014 08:58 >> Para: freebsd@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: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd