SLA monitoring is finally here. What is it useful for ? To add/remove dynamically routes in ASA depending on results of the SLA status. Below is configuration steps but while there are many words in the command itself there are not much options there , so the command is long but pretty uniform.
TokyoASA1(config)# sla monitor 33 TokyoASA1(config-sla-monitor)# type echo protocol ipIcmpEcho 188.8.131.52 int outside type echo TokyoASA1(config-sla-monitor-echo)# ?
default Set a command to its defaults exit Exit probe configuration frequency Frequency of an operation no Negate a command or set its defaults num-packets Number of Packets request-data-size Request data size threshold Operation threshold in milliseconds timeout Timeout of an operation tos Type Of Service
TokyoASA1(config-sla-monitor-echo)# frequency ?
sla-monitor-echo mode commands/options: <1-604800> Frequency in seconds
TokyoASA1(config)# sla monitor schedule 33 ?
ageout How long to keep this Entry when inactive life Length of time to execute in seconds recurring Probe to be scheduled automatically every day start-time When to start this entry
TokyoASA1(config)# sla monitor schedule 33 life forever start after 00:05:00
Now create tracking process to be later applied to the static route:
TokyoASA1(config)# track 1 rtr 33 reachability
And finally we create static route and attach to it the created track :
TokyoASA1(config)# route outside 0 0 184.108.40.206 track 1
Now let's see some statistics on the track:
TokyoASA1# sh track
Track 1 Response Time Reporter 33 reachability Reachability is Down 1 change, last change 00:04:03 Latest operation return code: Unknown Tracked by: STATIC-IP-ROUTING 0
The final configuration looks like
sla monitor 33 type echo protocol ipIcmpEcho 220.127.116.11 interface outside num-packets 3 request-data-size 1500 timeout 30 frequency 5 sla monitor schedule 33 life forever start-time after 00:05:00
TokyoASA1# sh sla monitor configuration
Entry number: 33 Owner: Tag: Type of operation to perform: echo Target address: 18.104.22.168 Interface: outside Number of packets: 3 Request size (ARR data portion): 1500 Operation timeout (milliseconds): 30 Type Of Service parameters: 0x0 Verify data: No Operation frequency (seconds): 5 Next Scheduled Start Time: Start Time already passed Group Scheduled : FALSE Life (seconds): Forever Entry Ageout (seconds): never Recurring (Starting Everyday): FALSE Status of entry (SNMP RowStatus): Active Enhanced History:
TokyoASA1# sh sla monitor configuration operational-state
Entry number: 33 Modification time: 15:14:04.168 UTC Sun May 23 2010 Number of Octets Used by this Entry: 1480 Number of operations attempted: 48 Number of operations skipped: 0 Current seconds left in Life: Forever Operational state of entry: Active Last time this entry was reset: Never Connection loss occurred: FALSE Timeout occurred: FALSE Over thresholds occurred: FALSE Latest RTT (milliseconds): 1 Latest operation start time: 15:22:59.169 UTC Sun May 23 2010 RTT Values: RTTAvg: 1RTTMin: 1RTTMax: 1 NumOfRTT: 3RTTSum: 3RTTSum2: 3
TokyoASA1# debug sla monitor ?
error Output IP SLA Monitor Error Messages trace Output IP SLA Monitor Trace Messages
TokyoASA1# debug sla monitor trace
TokyoASA1# IP SLA Monitor(33) Scheduler: Starting an operation IP SLA Monitor(33) echo operation: Sending an echo operation IP SLA Monitor(33) echo operation: RTT=0 OK IP SLA Monitor(33) echo operation: RTT=0 OK IP SLA Monitor(33) echo operation: RTT=1 OK IP SLA Monitor(33) Scheduler: Updating result IP SLA Monitor(33) Scheduler: Starting an operation IP SLA Monitor(33) echo operation: Sending an echo operation IP SLA Monitor(33) echo operation: RTT=0 OK IP SLA Monitor(33) echo operation: RTT=0 OK IP SLA Monitor(33) echo operation: RTT=1 OK
And by the way it really works - when track is down the route to which it is attached magically disappeared from the routing table as should.