[FUGSPBR] Problema com pf e muitos IPS

Patrick Tracanelli eksffa em freebsdbrasil.com.br
Qua Nov 24 16:23:23 BRST 2004


> “pfi_table_update: cannot set 200 new addresses into table fx1: 22”

A limitação não é do PF não.

Não olhei no código com muita atenção pra saber se aquele if onde 
imprime esse erro pega alguma limitação de recurso da maquina ou do 
sistema, mas se for limitacao do OpenBSD talvez de pra contornar com tuning.

Em um FreeBSD com kernel quase generico e nenhum tuning o problema nao 
ocorre.

(root em main)~# pfctl -s rules | grep unreg10
pass in on carp0 from <unreg10_hosts> to any keep state
(root em main)~# pfctl -t unreg10_hosts -T show | wc -l
      254

Ai pra ver dobrei o numero de entradas na tabela

(root em main)~# cat /tmp/a
for ($i = 1; $i < 255; $i++) {
         print ("172.16.69.$i/32\n");
}

(root em main)~# perl /tmp/a >> /tmp/unreg10_hosts.tbl
(root em main)~# pfctl -f /etc/pf.conf
(root em main)~# pfctl -t unreg10_hosts -T show | wc -l
      508

Funciona normal e filtra corretamente.

Temos um cliente que insiste em colecionar IPs que ele juga ser de 
pessoas malvadas (por mais que o firewall ja seja de politica fechada 
ele insiste em colecionar) e neste, os IPs tambem estao numa tabela, mas 
com IPFW:

# ipfw table 12 list | wc -l
     1096

Tambem flui sem problemas. Com a vantagem que table no IPFW usa arvores 
Radix multiplas distinguindo redes de hosts isolados (e testando o match 
contra as redes primeiro), resultando em mais performance em tabelas 
abarrotadas.

-- 
Atenciosamente,

Patrick Tracanelli

FreeBSD Brasil LTDA.
The FreeBSD pt_BR Documentation Project
http://www.freebsdbrasil.com.br
patrick @ freebsdbrasil.com.br
"Long live Hanin Elias, Kim Deal!"

_______________________________________________________________
Para enviar um novo email para a lista: fugspbr em fugspbr.org
Sair da Lista: http://lists.fugspbr.org/listinfo.cgi
Historico: http://www4.fugspbr.org/lista/html/FUG-BR/



Mais detalhes sobre a lista de discussão freebsd