ฉันมี cisco และเซิร์ฟเวอร์ตรวจสอบที่มี icinga (a.k.a. nagios, thruk) ฉันต้องการรับกับดักจาก cisco และแสดงในไอซิ่งก้าแต่ฉันไม่เห็นอินเทอร์เฟซและ vlan สำหรับกับดักที่ผิดพลาดได้
ฉันได้ดาวน์โหลด mibs จาก cisco ซึ่งรวมถึง CISCO-ERR-DISABLE-MIB.my จากนั้นฉันแปลงเป็น snmpt ด้วยคำสั่งนี้:
snmpttconvertmib --in=CISCO-ERR-DISABLE-MIB.my --out=snmptt.conf --exec='/bin/bash /usr/local/bin/trap/submit_check_result $r '"errdisable 2" -net_snmp_perl - -รูปแบบ=4
ซึ่งสร้างการกำหนดค่าต่อไปนี้ (ฉันแทนที่เส้นทางสัมบูรณ์เพื่อ mib ด้วย ... และค่าตัวแปรด้วย ...):
#
#
#
#
MIB: CISCO-ERR-DISABLE-MIB (ไฟล์:/.../CISCO-ERR-DISABLE-MIB.my) แปลงเมื่อวันพุธที่ 8 กันยายน 16:49:53 น. 2564 โดยใช้ snmpttconvertmib v1.4.2
#
#
#
EVENT cErrDisableInterfaceEvent .1.3.6.1.4.1.9.9.548.0.1.1 "สถานะเหตุการณ์" ปกติ
รูปแบบ cErrDisableInterfaceEvent - cErrDisableIfStatusCause:$1
EXEC /bin/bash /usr/local/bin/trap/submit_check_result $r errdisable 2 "cErrDisableInterfaceEvent - cErrDisableIfStatusCause:$1"
สพป
cErrDisableInterfaceEvent ถูกสร้างขึ้นเมื่ออินเทอร์เฟซ
หรือ {interface, vlan} ถูกปิดใช้งานข้อผิดพลาดโดยคุณสมบัติ
ระบุไว้ในcErrDisableIfStatusCause
cErrDisableInterfaceEvent เลิกใช้แล้วและแทนที่ด้วย
cErrDisableInterfaceEventRev1.
ตัวแปร:
1: cErrDisableIfStatusCause
ไวยากรณ์ = "จำนวนเต็ม"
1: อู๊ด
...
9: portSecurityViolation
Descr="วัตถุนี้ระบุคุณสมบัติ/เหตุการณ์ที่ทำให้เกิด
{interface, vlan} (หรือทั้ง interface) ให้เป็น
ปิดใช้งานข้อผิดพลาด"
สพป
#
#
#
EVENT cErrDisableInterfaceEventRev1 .1.3.6.1.4.1.9.9.548.0.2 "เหตุการณ์สถานะ" ปกติ
รูปแบบ cErrDisableInterfaceEventRev1 - cErrDisableIfStatusCause:$1
EXEC /bin/bash /usr/local/bin/trap/submit_check_result $r errdisable 2 "$N - $+1"
สพป
cErrDisableInterfaceEventRev1 ถูกสร้างขึ้นเมื่อ
อินเทอร์เฟซหรือ {interface, vlan} ถูกปิดใช้งานโดยข้อผิดพลาด
คุณลักษณะที่ระบุใน cErrDisableIfStatusCause
cErrDisableInterfaceEventRev1 เลิกใช้แล้ว
cErrDisableInterfaceEvent เพื่อให้สอดคล้องกับ RFC 2578
ตามมาตรา 8.5 ของ RFC 2578 ต่อไป
เป็นตัวระบุย่อยตัวสุดท้ายในชื่อที่กำหนดขึ้นใหม่
การแจ้งเตือนต้องมีค่าเป็นศูนย์
ตัวแปร:
1: cErrDisableIfStatusCause
ไวยากรณ์ = "จำนวนเต็ม"
1: อู๊ด
...
9: portSecurityViolation
Descr="วัตถุนี้ระบุคุณสมบัติ/เหตุการณ์ที่ทำให้เกิด
{interface, vlan} (หรือทั้ง interface) ให้เป็น
ปิดใช้งานข้อผิดพลาด"
สพป
มีสองกับดัก ฉันสนใจเฉพาะ cErrDisableInterfaceEventRev1 แต่ไม่ได้อยู่ใน cErrDisableInterfaceEvent ที่เลิกใช้แล้ว
นี่คือ send-errdisable.sh ของฉันซึ่งฉันใช้เพื่อสร้างเหตุการณ์การทดสอบที่ผิดพลาดได้:
TO_HOST=icinga.example.com
ชุมชน = abcabc
snmptrap -m ALL -v 2c -c $community $TO_HOST '' CISCO-ERR-DISABLE-MIB::cErrDisableInterfaceEventRev1 \
CISCO-ERR-DISABLE-MIB::cErrDisableIfStatusCause.2.0 ฉัน 1 \
2>/dev/null
ตอนนี้เมื่อฉันสร้างเหตุการณ์ที่ผิดพลาดได้ ในเอาต์พุตปลั๊กอิน icinga สำหรับบริการที่ผิดพลาดได้ ฉันได้รับข้อความต่อไปนี้:
cErrDisableInterfaceEventRev1 - cErrDisableIfStatusCause:udld
แต่ฉันคาดว่าอินเทอร์เฟซและ vlan จะอยู่ที่นั่นเช่นนี้:
cErrDisableInterfaceEventRev1 - cErrDisableIfStatusCause.2.0:udld
ทำไมมันไม่แสดง? และจะแก้ไขได้อย่างไร?