Hi all,
I have been searching for more then 1 year to solve my problem.
It started with me running an NTP-server behind NAT.
All of a sudden I noticed that my home-network started to act very weird.
I was using a Fritzbox 7590, so I bought and 5690Pro and returned the first to AVM to have it repaired (also because of a Wifi-issue).
Thinking the 5690Pro is a brand new box, it can handle the load…nope it can’t.
Ok, no problem, my ISP was using Draytek for big clients, so buy a Draytek, it can handle 60K NAT…nope can’t.
Bought me a MikroTek, all said it can do it…no again!
No problem, I build my own router with IPfire…what?? It fails too!!!
After a lot of testing I found that the NAT-tables got filled when using 50 packets/sec, but those are 50 different IP’s, so within a few hours NAT stops working properly, then DNS quits and in the end you can only unplug it.
The problem is in the kernel parameters, they are not modified to handle such.
The solution is simple, change /etc/sysctl.conf and add:
net.netfilter.nf_conntrack_udp_timeout = 15
net.core.netdev_max_backlog = 4000
net.netfilter.nf_conntrack_max = 1048576
UDP needs 15 sec else VOIP will do strange things.
See what happens after the change:
Peaks of 1300 packets/second, all different IP’s. And it keeps being fast.
So I ask you, please adapt the kernel-parameters to avoid problems with massive NAT’ing going wrong.
If you want to test yourself. Start an NTP-server yourself, add it to the NTPpool.org and set the speed setting to max 3GB/sec and see your box go down after a few hours.
With my settings it keeps humming like nothing happens.
My 2cts, for this fantastic piece of software.
Bas.

