I've been using Nagios at work for network monitoring. I honestly wish this was still called Netsaint, as I sound like an idiot trying to pronounce Nagios.
Anyhow, it's a great system that works very well. I have it currently installed behind our firewall on a private IP. We have 2 T1s, one through Bellsouth, and one through Qwest. The default gateway for the monitoring system is through the Bellsouth T1.
I would like it to monitor connectivity through both T1s and was thinking how to do this. Our routers are actually Linux boxes, so one way I was thinking is I could use the 'check_by_ssh' plugin to execute a network connectivity test directly on each router, by doing something like a wget to www.google.com.
Another way is I setup a static route for some external website to go through the Qwest T1. Let's say I use www.cnn.com for the Qwest T1 check. Looking up their IP I could add their address block to a static route:
route add -net 64.236.16.0 netmask 255.255.240.0 gw QWEST_FW
I decided to do the route method. It's not great, since cnn could change their IPs anytime, and also just because cnn is not accessible doesn't mean the Internet connectivity is down. But we had no monitoring in place so I wanted something.
An ERROR has occured!
Here you might send email-notification to webmaster or something like that.