Thanks, that gives me a direction to look at. It's only happened once in the 4 years I've had it so if it takes that long to fill up either of those I'll probably have a new router by then.
For me the DHCP Reservations is a big NVRAM Hog. So are QoS Rules, VPN Settings, things like that. If you've filled it up it's not really a time thing, it's going to get full again.
There are only 64KB of NVRAM on my router & I know a lot have the same. it shows as 63697/65536 bytes. 1 byte is a single letter in ASCII, but if using Unicode each character is 2 bytes. I'll assume everything that it uses will be in ASCII, but I know you can have Unicode characters in a WiFi SSID or Password, & I believe if it uses a single Unicode character for a variable setting the whole thing is Unicode, so standard lowercase & capitals, numbers, spaces, hyphens, underscores, all each take a bit or 2.
It fills up pretty quick, especially since each space, comma, enter return, colon, etc each count for one. 65,000 doesn't seem like a lot anymore.
So lets say you use a DHCP Reservation for Tom's Laptop, That's 12 just for the name, 15 for the IP address, 17 for the MAC, & then at least 3 characters separating each set, another for the return to the next line we're at almost 50 bytes per entry. That's on top of what it uses for the global parameters & to format & control the file itself.
You're thinking 64,000bytes is a lot. But most of that isn't even your settings. I don't know how much exactly & I think it differs between releases & devices, but for me after I take out all the things that I can see in the NVRAM Table I get from
nvram show | awk '{print length(), $0 | "sort -n -r"}' | cut -d"=" -f 1 | head -n 20
that leaves 55,874 bytes unaccounted for, those are used by the OS, I know part of that is used by the Default ASUSwrt firmware, but Merlin uses more. But if we assume 56K of your 64K is already taken before you add any config... That's only
8,000 bytes that you have to work with. It goes quick.
Now all of those things are things that if you move to a different router you will probably be using the same.
Unless you are switching to something other than merlin. In which case you're on stock firmware which won't have theses issues or are on a similar Custom Firmware & will likely have the same issues.