This script EEM aims to add or delete a static ip route. Each 10 seconds a ping is sent to a host. If this ping fails a static route is deleted. If this host responds, a route is added. If this host responds and if the route is already in the routing table, no change is done.
event manager applet Route_redisribute
event tag 1.0 timer watchdog time 10
action 001 cli command "enable"
action 002 cli command "ping 10.1.37.3"
action 003 regexp "!!" "$_cli_result"
action 004 if $_regexp_result eq 1
action 005 cli command "show ip route static"
action 006 regexp "10.12.37.0/24" "$_cli_result"
action 007 if $_regexp_result ne 1
action 008 cli command "conf t"
action 009 cli command "ip route 10.12.37.0 255.255.255.0 10.1.37.8 tag 100"
action 010 end
action 011 else
action 012 continue
action 013 else
action 014 cli command "conf t"
action 015 cli command "no ip route 10.12.37.0 255.255.255.0 10.1.37.8 tag 100"
action 016 end
!
end
In order to debug this script, the following command is helpful:
debug event manager action cli