I run a custom python script to update various dynamic DNS servers through launchctl and it runs every 15 minutes. This is both overkill and underkill.
It would be nice if the script would execute only when reachability changes, and then as a fallback maybe every 30 minutes. I could easily enough update the Python script to check if the external address has changed before calling the update, but if my connection goes down and comes back up with a different IP address, I wouldn't want to have to wait 15-30 minutes.
Note this is different than the keep alive parameter. Odds are my computer will never lose its network connection. It's on a LAN and everything has backup power. So, only Internet reachability matters.