[FUG-BR] RES: RES: Testando ipfw natBom, tópico resurgindo depois de algum tempo inativo, mas vamos lá. Instalei um FreeBSD 8 aqui na empresa para testes do NAT direto no IPFW e balanceamento de carga também no IPFW com a opção ROUTETABLES no kernel, o ambiente é o seguinte: LAN=192.168.17.0/24 INT_IF=192.168.17.1 EXT_ADSL=192.168.28.2 EXT_ADSL2=192.168.29.2
..---> ADSL (192.168.28.1) / LAN ------> FW \ `---> ADSL2 (192.168.29.1) Compilei no KERNEL as seguintes opções: #cat /usr/src/sys/amd64/conf/FW [...] options IPFIREWALL options IPFIREWALL_VERBOSE options IPFIREWALL_VERBOSE_LIMIT=1000 options IPFIREWALL_DEFAULT_TO_ACCEPT options IPFIREWALL_FORWARD options IPFIREWALL_NAT # Aqui <E9> ativo o NAT no kernel options LIBALIAS # Necess<E1>rio para o NAT options IPDIVERT options DUMMYNET options HZ=1000 options ROUTETABLES=2 options ALTQ options ALTQ_CBQ options ALTQ_RED options ALTQ_RIO options ALTQ_HFSC options ALTQ_CDNR options ALTQ_PRIQ options ALTQ_NOPCC FreeBSD fw.xxx.com.br 8.0-BETA2 FreeBSD 8.0-BETA2 #3: Wed Aug 19 14:52:16 BRT 2009 ricardovolp...@fw.xxx.com.br:/usr/obj/usr/src/sys/FW amd64 Fiz o nat pelo PF pois com o IPFW não obtive sucesso pelo seguinte motivo: Somente com o kernel compilado sem nenhum tipo de NAT rodando e nenhum serviço instalado da maquina com o ip 192.168.17.2 eu conseguia pingar o IP 192.168.29.1 mas quando ativava o NAT do ipfw o modem adsl parava de responder, seguem as regras de nat, somente NAT: setfib 0 route add default 192.168.28.1 setfib 1 route add default 192.168.29.1 ipfw nat 1 config if re0 same_ports unreg_only ipfw add nat 1 all from rl0 to any out via re0 ipfw nat 2 config if rl1 same_ports unreg_only ipfw add nat 2 all from rl0 to any out via rl1 Beleza, depois de ativar essas regras e algumas outras que tbm testei, não obtive sucesso com o NAT do IPFW, configurei alguma coisa errada? Parti então para o NAT com o PF mesmo. As regras de NAT do PF estão corretas e são as seguintes: nat on re0 from 192.168.17.0/24 to ! 192.168.17.0/24 -> 192.168.28.2 nat on rl1 from 192.168.17.0/24 to ! 192.168.17.0/24 -> 192.168.29.2 E no IPFW para balanceamento de carga as seguintes regras: ipfw add 1000 set 1 prob 0.5 skipto 3000 all from any to any out #Metade fica para fib0 e a outra metade vai para fib1 ipfw add 2000 set 2 setfib 0 all from any to any out ipfw add 2100 set 2 allow all from any to any out keep-state ipfw add 3000 set 3 setfib 1 all from any to any out ipfw add 3100 set 3 allow ip from any to any out keep-state Beleza, depois de executar as regras de NAT do PF e de Balancemanto do IPFW, fui para os testes. Naveguei normal, mas percebi que o trafego saia somente pela setfib0, tentei então excluir as regras 2000 e 2100 e alterei a regra 1000 para ipfw add 1000 set 1 prob 1 allow all from any to any out Após essas duas mudanças, não consegui mais navegar, percebi, através do comando ipfw show que o trafego está passando pelas regras. Alguém pode me explicar porque isso acontece? O que posso estar fazendo de errado? Li varios tutoriais na internet, até em Russo (huaehuae), mas nenhum deles tirou as minhas duvidas. Espero que entendam o problema e que alguém tenha alguma sugestão para que eu coloque esse em ambiente em produção. Eu sei que com o PF tem como fazer, mas o trabalho com IPFW a anos e tenho um outro firewall que pretendo fazer algumas alterações, (incluir mais um link) algo parecido com o ambiente ilustrado. Se precisar de mais alguma coisa para entender o ambiente é só perguntar que envio. From: Renato Frederick Sent: Monday, December 29, 2008 9:23 PM To: 'Lista Brasileira de Discussão sobre FreeBSD (FUG-BR)' Subject: [FUG-BR] RES: RES: Testando ipfw nat Assim que houver uma janela de tempo farei os testes! Obrigado Luiz > > Sim Renato, > > No ipfw você tem a keyword setfib que faz com que o pacote seja roteado > segunda a tabela que você definiu. Como cada tabela pode ter seu > default > gateway (e outras rotas especificas) acredito que você consiga sim > fazer o > PBR com essa solução. > > Só não sei dizer sobre as interações com o BGP, mas se você já faz com > ipfw > fwd, com certeza vai fazer com o setfib. > > Abraços, > Luiz Otavio > > ------------------------- > Histórico: http://www.fug.com.br /historico/html/freebsd/ > Sair da lista: https://www.fug.com .br/mailman/listinfo/freebsd ------------------------- Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd