Several months back, I changed my home Internet provider to Singtel. Unlike other ISPs that provide an Optical Network Terminal (ONT) device, Singtel uses an Optical Network Router (ONR), which is an ONT with a built-in router. The downside to an ONR is that if you want to use your own Wi-Fi router, you have to set it to AP (access point) mode. Since I have my own Netgear Orbi Wi-Fi mesh, I wanted to use that instead of the free Wi-Fi router that Singtel gave me.

Singtel issued me the ZTE ZXHN F620 ONR. Because I wanted a fixed LAN IP for my Orbi, I set up DHCP Binding (also known as DHCP Reservation) in the F620. On the Orbi, I also configured a static IP. I did the same for my NAS. For months, everything was great. Around two months ago, my Wi-Fi network would go down. Or rather, the network was there, but devices could not connect to it. My phone would show that it was trying to get an IP, then an error and disconnect from the Wi-Fi. Rebooting the Wi-Fi router helped. Then it happened a few more times, and rebooting the Wi-Fi router didn’t help. I tried rebooting the ONR, which helped a few times. After that, it didn’t help anymore. Once, this happened for around 12 hours. No amount of rebooting devices helped. The Orbi showed it was connected to Internet, but nothing worked. But suddenly, everything was working again when no one was home. Odd.
Recently, it happened once more. Fed up, I armed myself with a laptop and network cable, and started to troubleshoot. To my surprise, the laptop was able to get an IP, and had Internet. Yet the router was rejecting Wi-Fi connections. At one point, I thought my Orbi router was faulty. I brought it and connected it directly to the ONR, and suddenly everything worked. I brought it back to the living room, and the Wi-Fi broke again. So I thought it could be the network port/cabling. But my network cable tester showed the connection was fine. Connecting the laptop in the living room port was ok too. I was exasperated.

Since the Wi-Fi connection was failing because the device was unable to obtain an IP, I decided to do a “double NAT”, that is, I set up the Orbi in router mode, ensuring it was in a different subnet as the ONR, and connecting the ONR to the Internet port of the Orbi. Now my devices could connect to the Wi-Fi network, but without Internet. I checked the ONR settings, and noticed it had assigned a different IP to my Orbi. The MAC address was off by one. I updated the DHCP binding in the ONR settings. Then I rebooted the Orbi, but it was still assigned the old IP. However, after the lease expired, the ONR assigned the correct IP to the Orbi, and everything was back online again.
I finally realised the problem. When I switched the Orbi to router mode, the MAC address changed. This caused the ONR to assign a random DHCP IP address to the Orbi. However, the Orbi was configured with a static IP which is different. Devices connecting to Wi-Fi would perform DHCP request through the AP. The ONR sees the DHCP Request from the AP, which has an incorrect IP. The ONR would then send the DHCPNAK to the AP, preventing devices from getting an IP.
However, this doesn’t explain the intermittent Wi-Fi issues from before. My guess is that either the Orbi accidentally advertised the wrong MAC occasionally (seems like it has happened from Googling), causing a conflict with the DHCP and static IP, or the ONR DHCP server messed up and assigned the wrong IP temporarily, and rebooting got the MAC/DHCP/IPs back in order.
The solution to this? Use only one or the other – either DHCP Binding or Static IP, not both. For Static IP, best to set it to a range outside of DHCP range.