I got to thinking about Ronen's question as to how to find non-functional
gateway, and I've come up with a scheme.
I've added code to the rip sender that watches for ICMP unreachable
packets coming back to amprgw during the rip sending cycle, which repeats
every 5 minutes.
If an ICMP unreachable packet is received, the matching gateway is
removed from that cycle, so with luck (if the unreachables get here
quickly enough) we'll only send one or two packets to a gateway that's
not reachable.
The time and gateway address are logged; some future process should be
able to analyze this log and do something about the gateway if it's out
of service long enough. (What it will do about it isn't exactly clear
right now.)
This doesn't seem to have slowed down the rip sender much if at all.
- Brian