That is similar to what happens here. Every now and then, the cable network has some kind of "event", but the modem stays "up" and my router thinks it is all still connected. The only way to recover is to power cycle the modem, or restart the WAN on the router. So that's what my script does...