Apakah ada MIB SNMP untuk Objek Track Cisco

8

Tujuan saya adalah menulis cek layanan yang menarik status daftar lagu Cisco yang sedang menjalankan Boolean OR. Saya memiliki scraper layar di tempat saat ini, tetapi itu benar-benar tidak ideal dalam hal penskalaan jenis layanan ini.

Objek trek di bawah ini hanya mengeluarkan rute statis yang dilacak jika object 10dan object 20keduanya tidak dapat dijangkau, yang memungkinkan BGP mempelajari rute default untuk diinstal, yang sebaliknya dalam status kegagalan RIB.

Contoh Konfigurasi:

!
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.10.10.10
ip sla schedule 1 life forever start-time now
ip sla 2
 icmp-echo 4.2.2.2 source-ip 10.10.10.10
ip sla schedule 2 life forever start-time now

ip route 0.0.0.0 0.0.0.0 10.10.10.1 track 30

Akan ideal untuk menarik jumlah perubahan atau Boolean ORstatus (naik atau turun) dari OID.

HOSTNAME#show track 30
Track 30
  List boolean or
  Boolean OR is Up
    14716 changes, last change 02:18:47
    object 10 Up
    object 20 Up
  Tracked by:
    STATIC-IP-ROUTINGTrack-list 0

Saya telah menggali melalui mesin Google, forum dan Cisco SNMP Object Navigator tetapi tidak berhasil.

satu kali
sumber

Jawaban:

8

Saya tidak percaya ada cara untuk secara langsung polling hasil ORmelalui SNMP, tetapi Anda tentu bisa polling untuk hasil IP SLA dan menghitung sendiri.

Dengan menggunakan CISCO-RTTMON-MIB (1.3.6.1.4.1.9.9.42), Anda dapat memeriksa nilai batas waktu pemeriksaan keterjangkauan Anda, mengambil nilai benar / salah yang dikembalikan dan melakukan ORapa pun dalam bahasa skrip yang Anda gunakan untuk polling melalui SNMP.


Misalnya, saya menyiapkan tes serupa dengan tes Anda di atas:

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

Kemudian, saya memverifikasi output di 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

Selanjutnya, dengan pelacakan IP SLA di tempat, saya menginstal CISCO-RTTMON-MIB pada server pemantauan saya, dan berjalan nilai rttMonCtrlOperTimeoutOccurred (1.3.6.1.4.1.9.9.4.4.1.1.9.9.1.6) untuk itu Benar / Salah output .

Butir utama yang perlu diperhatikan adalah bahwa karena kita sedang polling apakah timeout terjadi atau tidak, itu False berarti bahwa tujuan dapat dijangkau , dan Benar berarti bahwa itu tidak dapat dijangkau dan timeout telah terjadi .

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)

Akhirnya, saya menghitamkan lalu lintas ke 8.8.8.8 dari kotak itu, dan memeriksa kembali hasil Track di 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

Sekarang kita memiliki salah satu objek uji dalam Downkeadaan, mari kita lihat hasil polling rttMonCtrlOperTimeoutOccurred lagi:

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)

Sekarang, seperti yang saya nyatakan di atas, Anda hanya perlu polling nilai-nilai itu dan menggunakannya namun Anda perlu dalam skrip Anda.

Brett Lykins
sumber
5

Kami memiliki masalah yang sama dan saya menemukan solusi untuknya:

Ini disebut Expression MIB sesuai RFC 2982 . Anda dapat melakukan ATAU logis pada level ini dengan membuat objek SNMP OID baru yang akan dihitung pada saat yang sama dengan Permintaan SNMP datang ke router / switch untuk OID ini.

Setelah itu Anda dapat menggunakan objek ini untuk polling statistik SNMP dari 2 atau lebih ORed (melalui Expression MIB) penyelidikan IP SLA.

Saya dapat memberi Anda detail lebih lanjut jika Anda mau. Saya juga akan menyiapkan posting blog tentang hal itu dengan petunjuk langkah demi langkah cara membuat SNMP OID baru untuk penggunaan khusus ini melalui Expression MIB.

Katakanlah Anda memiliki 3 probe HTTP IP SLA yang dikonfigurasi pada perangkat dan Anda ingin memantau (melalui SNMP) hasil ATAU:

  1. Indeks SLA IP / rttMonHTTPStatsEntry == 3000
  2. Indeks SLA IP / rttMonHTTPStatsEntry == 3001
  3. Indeks SLA IP / rttMonHTTPStatsEntry == 3002

Anda dapat menggunakan rttMonLatestHTTPOperSense berikut OID (satu per entri / ip sla probe) dan menetapkan nilainya ke variabel untuk menggunakan nilai-nilai ini dalam evaluasi ekspresi.

Bagaimana cara:

  1. menghancurkan ekspresi lama akhirnya yang dibuat

    snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.2.3.1.3.101.49.101.120.112 integer 6

  2. buat dan tunggu

    snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.2.3.1.3.101.49.101.120.112 integer 5

  3. membuat indeks untuk digunakan nanti untuk mengambil hasil dari ekspresi

    snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.2.3.1.2.101.49.101.120.112 u 1

  4. deskripsi ekspresi

    snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.3.1.1.4.1 s "Expression MIB - IP SLA Probe ORing"

  5. Ekspresi yang akan dievaluasi

    snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.3.1.1.2.1 s '((($ 1 <2) && ($ 1> 0)) || (($ 2 <2) && ($ 2 > 0)) || (($ 3 <2) && ($ 3> 0))) '

  6. menetapkan variabel $ 1 untuk rttMonLatestHTTPOperSense

    snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.3.2.1.2.1.1 objectidentifier 1.3.6.1.4.1.9.9.42.1.5.1.1.6.3000

  7. menetapkan variabel $ 2 untuk rttMonLatestHTTPOperSense

    snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.3.2.1.2.1.2 objectidentifier 1.3.6.1.4.1.9.9.42.1.5.1.1.6.3001

  8. menetapkan variabel $ 3 untuk rttMonLatestHTTPOperSense

    snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.3.2.1.2.1.3 objectidentifier 1.3.6.1.4.1.9.9.42.1.5.1.1.6.3002

  9. setel variabel $ 1 ke absolut (untuk delta adalah 2)

    snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.3.2.1.4.1.1 integer 1

  10. menetapkan jenis variabel $ 2 menjadi absolut (untuk delta adalah 2)

    snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.3.2.1.4.1.2 integer 1

  11. setel variabel $ 3 menjadi absolut (untuk delta adalah 2)

    snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.3.2.1.4.1.3 integer 1

  12. Setel baris di expObjectTable ke aktif

    snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.3.2.1.10.1.1 integer 1

  13. Setel baris di expObjectTable ke aktif

    snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.3.2.1.10.1.2 integer 1

  14. Setel baris di expObjectTable ke aktif

    snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.3.2.1.10.1.3 integer 1

  15. Aktifkan ekspresi

    snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.2.3.1.3.101.49.101.120.112 integer 1

Hanya skrip:

snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.2.3.1.3.101.49.101.120.112 integer 6
snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.2.3.1.3.101.49.101.120.112 integer 5
snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.2.3.1.2.101.49.101.120.112 u 1
snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.3.1.1.4.1 s "Expression MIB - IP SLA Probes ORing"
snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.3.1.1.2.1 s '((($1 < 2) && ($1 > 0)) || (($2 < 2) && ($2 > 0)) || (($3 < 2) && ($3 > 0)))'
snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.3.2.1.2.1.1 objectidentifier 1.3.6.1.4.1.9.9.42.1.5.1.1.6.3000
snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.3.2.1.2.1.2 objectidentifier 1.3.6.1.4.1.9.9.42.1.5.1.1.6.3001
snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.3.2.1.2.1.3 objectidentifier 1.3.6.1.4.1.9.9.42.1.5.1.1.6.3002
snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.3.2.1.4.1.1 integer 1
snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.3.2.1.4.1.2 integer 1
snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.3.2.1.4.1.3 integer 1
snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.3.2.1.10.1.1 integer 1
snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.3.2.1.10.1.2 integer 1
snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.3.2.1.10.1.3 integer 1
snmpset -v2c -cstart123 172.0.0.1 1.3.6.1.4.1.9.10.22.1.2.3.1.3.101.49.101.120.112 integer 1
damian1baran
sumber