IPTables hashlimit-above contagem incorreta

1

Atualmente, estou tendo problemas para tentar configurar uma regra no IPTables para limitar determinados pacotes. Eu não posso simplesmente usar o modo de limite normal no iptables, pois isso tem que ser por dstip e dstport.

A regra é assim:

iptables -A PREROUTING -t raw -p udp -m hashlimit -m u32 --u32 "0x0>>0x16&0x3c@0x9&0xff=0x55" --dport 27015:27105 --hashlimit-mode dstip,dstport --hashlimit-above 500/sec --hashlimit-name PLAYERQUERY -j DROP

Isso parece funcionar corretamente e limitará a taxa quando uma quantidade significativa chegar, no entanto, eu posso ver pacotes aleatórios sendo descartados mesmo quando abaixo do limite de 500 / seg. Estou verificando isso usando wireshark em nossos nós e estou vendo apenas 20 ~ um segundo.

Dois outros exemplos com alguns pacotes caíram cedo demais: Mesma perda aleatória com outra regra:

iptables -A INPUT -m hashlimit -m tcp -p tcp --dport 80 -i eth0 --hashlimit-above 256/sec --hashlimit-burst 512 --hashlimit-mode srcip --hashlimit-name reg_html1 -m state --state NEW -j DROP

E no lo (vs eth0), todos os primeiros pacotes são correspondidos.

    
por user1372896 14.09.2016 / 09:50

0 respostas