So, I've been experimenting around with different ways to monitor my DMVPN tunnels on remote routers. If the physical circuit they're running over is still in an "up" state even though there is no Internet connectivity, the state of the DMVPN tunnel tends to stay "up" also, causing monitoring nightmares. I've been doing a lot of playing with EIGRP status and alerting on that, but the EIGRP alerts are difficult to translate to a "down" state on the node summary or details pages, not to mention the issue with how often EIGRP is polled by default. So, I finally broke down and decided to look closer and custom MIBs and such to monitor the tunnels with. While doing so I think I found a much MUCH easier way!!
Was looking for resources on how to monitor DMVPN via SNMP and came across this article:
I got specifically interested in the part about "interface state control". Now, this is only useful from the remote routers perspective because what it does is make the state of the interface (ie: whether its up or down) dependent on whether there are any active NHRP sessions for that tunnel. And all you have to do to configure it is put "if-state nhrp" on the tunnel interface, super easy!
Now, this might not be perfect, but its pretty good. Why not perfect you might ask?
Let's say you have dual DMVPN hubs and the connection to one of the hubs isn't working on a given tunnel due to a routing misconfiguration or something. Since there would be one active NHRP session on the tunnel interface, this wouldn't find it.
This also does nothing for monitoring the tunnels from the head-end perspective, if for some reason monitoring the remote routers wasn't how you wanted to do this. Once again, not useful.
You might also say if all your DMVPN tunnels weren't functioning, that this wouldn't help, but in that case the whole node should be down so I think we can discount that!
Not much to lose, and pretty easy to configure up, give it a try and let me know what you think!