OR
SNMP経由での結果を直接ポーリングする方法はないと思いますが、IP SLAの結果をポーリングして自分で計算することはできます。
CISCO-RTTMON-MIB(1.3.6.1.4.1.9.9.42)を使用して、到達可能性チェックのタイムアウト値を確認し、返されるtrue / false値を取得してOR
、使用しているスクリプト言語でを実行できますSNMP経由のポーリング。
たとえば、上記と同様のテストを設定します。
track 10 ip sla 1 reachability
!
track 20 ip sla 2 reachability
!
track 30 list boolean or
object 10
object 20
!
ip sla 1
icmp-echo 8.8.8.8 source-ip 10.129.10.62
ip sla schedule 1 life forever start-time now
ip sla 2
icmp-echo 4.2.2.2 source-ip 10.129.10.62
ip sla schedule 2 life forever start-time now
!
ip route 10.171.20.0 255.255.255.252 10.129.10.61 track 30
次に、IOSで出力を確認しました。
R-VOIPLAB#show track 30
Track 30
List boolean or
Boolean OR is Up
2 changes, last change 00:01:21
object 10 Up
object 20 Up
次に、IP SLA追跡を設定して、監視サーバーにCISCO-RTTMON-MIBをインストールし、真/偽の出力があるかどうかrttMonCtrlOperTimeoutOccurred(1.3.6.1.4.1.9.9.42.1.2.9.1.6)の値を調べました。。
注意すべき重要な点は、タイムアウトが発生したかどうかをポーリングしているため、Falseは宛先が到達可能であることを意味し、Trueは宛先に到達できずタイムアウトが発生したことを意味します。
snmpwalk -v3 -a SHA -A SNMP-AUTH-PASS -l authNoPriv -u SNMPUSER r-voiplab rttMonCtrlOperTimeoutOccurred
CISCO-RTTMON-MIB::rttMonCtrlOperTimeoutOccurred.1 = INTEGER: false(2)
CISCO-RTTMON-MIB::rttMonCtrlOperTimeoutOccurred.2 = INTEGER: false(2)
最後に、そのボックスから8.8.8.8にトラフィックをブラックホール化し、IOSで追跡結果を再度確認しました。
R-VOIPLAB(config)#ip route 8.8.8.8 255.255.255.255 null 0
R-VOIPLAB(config)#end
R-VOIPLAB#show track 30
Track 30
List boolean or
Boolean OR is Up
2 changes, last change 00:21:18
object 10 Down
object 20 Up
Tracked by:
STATIC-IP-ROUTING 0
Down
状態にあるテストオブジェクトの1つがあるので、rttMonCtrlOperTimeoutOccurredのポーリングの結果をもう一度見てみましょう。
snmpwalk -v3 -a SHA -A SNMP-AUTH-PASS -l authNoPriv -u SNMPUSER r-voiplab rttMonCtrlOperTimeoutOccurred
CISCO-RTTMON-MIB::rttMonCtrlOperTimeoutOccurred.1 = INTEGER: true(1)
CISCO-RTTMON-MIB::rttMonCtrlOperTimeoutOccurred.2 = INTEGER: false(2)
さて、上で述べたように、これらの値をポーリングして使用する必要がありますが、スクリプトでは必要です。