I have 5 extensions in an office, the only 5 operating on this phone server. The server sits a number of hops away in a colocation center, but through tunnels, the phones have direct, non-NATted, unfirewalled access to the phone server.
The phones each received their IP via DHCP in the office, along with the basic stuff needed for provisioning. All boiler plate, nothing fancy.
The system worked fine for a few months. Then we started having trouble with the local power company. Basically what will happen is an intermediate router will get rebooted, but not the phones or the phone server. Here's the weird part....
Once this happens, the phones lose audio. They seem to provision fine upon reboot, and have a dial tone, but when I dial on them, nothing can be heard, not even ringing.
Now here's the really bad part. Nothing fixes the phone's IP address.... Not rebooting the phones, not rebooting the FreePBX server, not rebooting the routers.
If I move the phone to a different IP address, it works again.
If I take any phone and move it to the failed IP address, it has the same problem, regardless of what phone/extension it is.
This is becoming a problem because I only have about 100 IP addresses left in the subnet to rotate the phones onto. Hopefully the power problems will be fixed before that happens, but there's no guarantee.
NAT Mode is set to never - no RFC3581.
If anyone wants to see relevant configuration, let me know what you think is relevant and I'll post it. Honestly I'm not even sure where to begin.