[FUG-BR] Ignorando NAT (PF) para determinados IPs de destino

Welkson Renny de Medeiros welkson em focusautomacao.com.br
Terça Maio 8 15:36:27 BRT 2007


Boa tarde amigos,


Gostaria que alguns sites não passasem pelo proxy-transparente (Rádio 
UOL/Conectividade, entre outros).

Tenho a seguinte regra no IPFW que FUNCIONA:

# Proxy transparente (excessao Radio Uol)
ipfw add 0000008 fwd 127.0.0.1,8080 tcp from any to not 
200.201.173.0/24,200.201.174.0/24,200.221.5.0/24,200.221.2.0/24,200.221.8.0/24 
dst-port 80 out recv $int_if xmit $ext_if

Agora quero fazer o mesmo em outro cliente, mas lá o firewall é todo PF... 
não consegui:

# macro
radiouol = "{ 200.201.173.0/24, 200.201.174.0/24, 200.221.5.0/24, 
200.221.2.0/24, 200.221.8.0/24, 200.157.179.0/24 }"

# proxy transparente
rdr inet proto tcp from any \
  to ! $radiouol port www -> 127.0.0.1 port 8080

Quando executo o pfctl:

[root em netserver:/etc] # pfctl -f pf.conf
pf.conf:117: syntax error
pfctl: Syntax error in config file: pf rules not loaded

Esta linha 171 é exatamente a do rdr mostrado acima... quando retiro a 
negação "!" não ocorre erro... mas fica sem lógica a regra... eu quero que 
ele ignore o proxy exatamente nesses ips...

Eu fiz testes somente com a negação dentro do macro, e apenas 1 ip, 
funcionou perfeitamente... mas quando coloco mais de 1 só funciona o 
primeiro... já tentei de tudo, separar por vírgula, sem separação, sem 
"{"... já dei uma verificada no help do pf, etc... me ajudem ;-)

Abraço a todos.


-- 
Welkson Renny de Medeiros
Focus Automação Comercial
Desenvolvimento / Gerência de Redes
welkson em focusautomacao.com.br



                      Powered by ....

                                           (__)
                                        \\\'',)
                                          \/  \ ^
                                          .\._/_)

                                      www.FreeBSD.org 



Mais detalhes sobre a lista de discussão freebsd