Ad Widget

Collapse

net.if.discovery vrací pouze první interface (ethernet)

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Freezstyler
    Member
    • Oct 2022
    • 39

    #1

    net.if.discovery vrací pouze první interface (ethernet)

    Ahoj,
    zkouším použít výše uvedenou funkci pro vyhledání interfaců (ethernetů) a automatické vytvoření grafů. U spousty zařízení mi to funguje (switche, Siklu apod.). Ale trochu se peru se Summitem. Ať upravím OID v dotazu jakkoliv, tak mi vždy vrátí pouze první ethernet, ale další už nevypíše.

    Takhle vypadá položka v SNMP OID: discovery[{#IFOPERSTATUS},1.3.6.1.2.1.2.2.1.8,{#IFADMINSTATU S},1.3.6.1.2.1.2.2.1.7,{#IFALIAS},1.3.6.1.2.1.31.1 .1.1.18,{#IFNAME},1.3.6.1.2.1.31.1.1.1.1,{#IFDESCR },1.3.6.1.2.1.2.2.1.2,{#IFTYPE},1.3.6.1.2.1.2.2.1. 3]


    ​Projel jsem si anténu snmpwalkem a popsané ethernety tam vidím:

    OID=.1.3.6.1.2.1.2.2.1.2.1, Type=OctetString, Value=BT Eth1/SFP1
    OID=.1.3.6.1.2.1.2.2.1.2.2, Type=OctetString, Value=BT Eth2
    OID=.1.3.6.1.2.1.2.2.1.2.3, Type=OctetString, Value=BT SFP2​

    OID=.1.3.6.1.2.1.2.2.1.2.1, Type=OctetString, Value=BT Eth1/SFP1
    OID=.1.3.6.1.2.1.2.2.1.2.2, Type=OctetString, Value=BT Eth2
    OID=.1.3.6.1.2.1.2.2.1.2.3, Type=OctetString, Value=BT SFP2​

    Pokud si zkusím test discovery rule v Zabbixu, tak mi to vyplivne následující:

    [{"{#SNMPINDEX}":"5","{#IFOPERSTATUS}":"1","{#IFADM INSTATUS}":"1","{#IFALIAS}":" ","{#IFNAME}":"BT Eth1/SFP1","{#IFDESCR}":"BT Eth1/SFP1","{#IFTYPE}":"6"}]

    Divné je, že SNMPINDEX je 5, přitom by měl být 1 a chybí tam ty dva další ethernety.

    Nevíte někdo prosím kde bych měl začít hledat problém? Nějak nevím jak tohle debbugovat.

    Díky moc.
  • bitboy
    Member
    Zabbix Certified Trainer
    Zabbix Certified SpecialistZabbix Certified Professional
    • Apr 2014
    • 37

    #2
    Spajate dve MIB tabulky v ramci podstromu: 1.3.6.1.2.1.2.2.1 a 1.3.6.1.2.1.31.1.1.1.
    Skuste spravit walk na obe tieto tabulky a skontrolovat ci sedia indexy rozhrani. Tiez mozete skusit vypnut rezim bulk v konfiguracii SNMP rozhrania na hoste.

    Comment

    • hermanekt
      Member
      Zabbix Certified Trainer
      Zabbix Certified SpecialistZabbix Certified Professional
      • Aug 2019
      • 59

      #3
      Jeste bych zkusil v pripade rozhazenych cisel u interface mrknout na Dynamic indexes pro snmp https://www.zabbix.com/documentation...amic%2Cindexes Jinak pro debug bych zacal jen s {#IFNAME}. Bulk v kombinaci SMMP3 muze taky dost potrapit.

      Comment

      • Freezstyler
        Member
        • Oct 2022
        • 39

        #4
        Bulk request jsem zkusil vypnout, ale beze změny. Stále mi to načte jen první ethernet a ostatní dva ne. SNMPv3 nepoužívám, všechno je SNMPv2.


        Když provedu test itemu v Zabbixu pouze na IFNAME (discovery[{#IFNAME},1.3.6.1.2.1.31.1.1.1.1]), dostanu opět jen první interface (ethernet): [{"{#SNMPINDEX}":"5","{#IFNAME}":"BT Eth1/SFP1"}]


        To samé dostanu s druhým OID: [discovery[{#IFNAME},1.3.6.1.2.1.2.2.1] = {"{#SNMPINDEX}":"5","{#IFNAME}":"BT Eth1/SFP1"}]

        Když provedu SNMPwalk: snmpwalk -v2c -c (vymazaná komunita) (vymazané IP) 1.3.6.1.2.1.2.2.1

        IF-MIB::ifIndex.1 = INTEGER: 1
        IF-MIB::ifIndex.2 = INTEGER: 2
        IF-MIB::ifIndex.3 = INTEGER: 3
        IF-MIB::ifDescr.1 = STRING: BT Eth1/SFP1
        IF-MIB::ifDescr.2 = STRING: BT Eth2
        IF-MIB::ifDescr.3 = STRING: BT SFP2

        IF-MIB::ifType.1 = INTEGER: ethernetCsmacd(6)
        IF-MIB::ifType.2 = INTEGER: ethernetCsmacd(6)
        IF-MIB::ifType.3 = INTEGER: ethernetCsmacd(6)
        IF-MIB::ifMtu.1 = INTEGER: 2000
        IF-MIB::ifMtu.2 = INTEGER: 2000
        IF-MIB::ifMtu.3 = INTEGER: 2000
        IF-MIB::ifSpeed.1 = Gauge32: 1000000000
        IF-MIB::ifSpeed.2 = Gauge32: 1000000000
        IF-MIB::ifSpeed.3 = Gauge32: 1000000000
        IF-MIB::ifPhysAddress.1 = STRING: c4:aa:a1:0:2f:c3
        IF-MIB::ifPhysAddress.2 = STRING: c4:aa:a1:0:2f:c3
        IF-MIB::ifPhysAddress.3 = STRING: c4:aa:a1:0:2f:c3
        IF-MIB::ifAdminStatus.1 = INTEGER: up(1)
        IF-MIB::ifAdminStatus.2 = INTEGER: up(1)
        IF-MIB::ifAdminStatus.3 = INTEGER: up(1)
        IF-MIB::ifOperStatus.1 = INTEGER: up(1)
        IF-MIB::ifOperStatus.2 = INTEGER: up(1)
        IF-MIB::ifOperStatus.3 = INTEGER: down(2)
        IF-MIB::ifLastChange.1 = Wrong Type (should be Timeticks): INTEGER: 0
        IF-MIB::ifLastChange.2 = Wrong Type (should be Timeticks): INTEGER: 0
        IF-MIB::ifLastChange.3 = Wrong Type (should be Timeticks): INTEGER: 0
        IF-MIB::ifInOctets.1 = Counter32: 520673692
        IF-MIB::ifInOctets.2 = Counter32: 4113326090
        IF-MIB::ifInOctets.3 = Counter32: 0
        IF-MIB::ifInUcastPkts.1 = Counter32: 1731815437
        IF-MIB::ifInUcastPkts.2 = Counter32: 2995313986
        IF-MIB::ifInUcastPkts.3 = Counter32: 0
        IF-MIB::ifInNUcastPkts.1 = Counter32: 0
        IF-MIB::ifInNUcastPkts.2 = Counter32: 0
        IF-MIB::ifInNUcastPkts.3 = Counter32: 0
        IF-MIB::ifInDiscards.1 = Counter32: 0
        IF-MIB::ifInDiscards.2 = Counter32: 0
        IF-MIB::ifInDiscards.3 = Counter32: 0
        IF-MIB::ifInErrors.1 = Counter32: 0
        IF-MIB::ifInErrors.2 = Counter32: 0
        IF-MIB::ifInErrors.3 = Counter32: 0
        IF-MIB::ifInUnknownProtos.1 = Counter32: 0
        IF-MIB::ifInUnknownProtos.2 = Counter32: 0
        IF-MIB::ifInUnknownProtos.3 = Counter32: 0
        IF-MIB::ifOutOctets.1 = Counter32: 3814125596
        IF-MIB::ifOutOctets.2 = Counter32: 1703238046
        IF-MIB::ifOutOctets.3 = Counter32: 0
        IF-MIB::ifOutUcastPkts.1 = Counter32: 1490137908
        IF-MIB::ifOutUcastPkts.2 = Counter32: 2510031779
        IF-MIB::ifOutUcastPkts.3 = Counter32: 0
        IF-MIB::ifOutNUcastPkts.1 = Counter32: 0
        IF-MIB::ifOutNUcastPkts.2 = Counter32: 0
        IF-MIB::ifOutNUcastPkts.3 = Counter32: 0
        IF-MIB::ifOutDiscards.1 = Counter32: 0
        IF-MIB::ifOutDiscards.2 = Counter32: 0
        IF-MIB::ifOutDiscards.3 = Counter32: 0
        IF-MIB::ifOutErrors.1 = Counter32: 6
        IF-MIB::ifOutErrors.2 = Counter32: 6
        IF-MIB::ifOutErrors.3 = Counter32: 0
        IF-MIB::ifOutQLen.1 = Gauge32: 0
        IF-MIB::ifOutQLen.2 = Gauge32: 0
        IF-MIB::ifOutQLen.3 = Gauge32: 0
        IF-MIB::ifSpecific.1 = OID: SNMPv2-SMI::zeroDotZero.0
        IF-MIB::ifSpecific.2 = OID: SNMPv2-SMI::zeroDotZero.0
        IF-MIB::ifSpecific.3 = OID: SNMPv2-SMI::zeroDotZero.0

        Tak bych chtěl, abych v tom dotazu vždycky pomocí discovery získal všechny ethernety (označené tučně).​


        Mohl bych to samozřejmě vyřešit bez discovery a natvrdo si naklikat template, ale používám více druhů těch antén a každá má jiný počet ethernetů, takže je pro mě výhodnější mít jednu šablonu a vyčítat si tyto hodnoty dynamicky.

        Díky.

        Comment

        • bitboy
          Member
          Zabbix Certified Trainer
          Zabbix Certified SpecialistZabbix Certified Professional
          • Apr 2014
          • 37

          #5
          To je len jedna tabulka. Poslite prosim aj tu druhu: 1.3.6.1.2.1.31.1.1.1

          Comment

          • Freezstyler
            Member
            • Oct 2022
            • 39

            #6
            Tady je ta druhá: 1.3.6.1.2.1.31.1.1.1

            IF-MIB::ifName.1 = STRING: BT Eth1/SFP1
            IF-MIB::ifName.2 = STRING: BT Eth2
            IF-MIB::ifName.3 = STRING: BT SFP2
            IF-MIB::ifInMulticastPkts.1 = Counter32: 0
            IF-MIB::ifInMulticastPkts.2 = Counter32: 0
            IF-MIB::ifInMulticastPkts.3 = Counter32: 0
            IF-MIB::ifInBroadcastPkts.1 = Counter32: 0
            IF-MIB::ifInBroadcastPkts.2 = Counter32: 0
            IF-MIB::ifInBroadcastPkts.3 = Counter32: 0
            IF-MIB::ifOutMulticastPkts.1 = Counter32: 0
            IF-MIB::ifOutMulticastPkts.2 = Counter32: 0
            IF-MIB::ifOutMulticastPkts.3 = Counter32: 0
            IF-MIB::ifOutBroadcastPkts.1 = Counter32: 0
            IF-MIB::ifOutBroadcastPkts.2 = Counter32: 0
            IF-MIB::ifOutBroadcastPkts.3 = Counter32: 0
            IF-MIB::ifHCInOctets.1 = Counter64: 84119596525269
            IF-MIB::ifHCInOctets.2 = Counter64: 59079162271456
            IF-MIB::ifHCInOctets.3 = Counter64: 0
            IF-MIB::ifHCInUcastPkts.1 = Counter64: 66191900057
            IF-MIB::ifHCInUcastPkts.2 = Counter64: 45965453419
            IF-MIB::ifHCInUcastPkts.3 = Counter64: 0
            IF-MIB::ifHCInMulticastPkts.1 = Counter64: 0
            IF-MIB::ifHCInMulticastPkts.2 = Counter64: 0
            IF-MIB::ifHCInMulticastPkts.3 = Counter64: 0
            IF-MIB::ifHCInBroadcastPkts.1 = Counter64: 0
            IF-MIB::ifHCInBroadcastPkts.2 = Counter64: 0
            IF-MIB::ifHCInBroadcastPkts.3 = Counter64: 0
            IF-MIB::ifHCOutOctets.1 = Counter64: 8613172077231
            IF-MIB::ifHCOutOctets.2 = Counter64: 5412994787615
            IF-MIB::ifHCOutOctets.3 = Counter64: 0
            IF-MIB::ifHCOutUcastPkts.1 = Counter64: 22976474986
            IF-MIB::ifHCOutUcastPkts.2 = Counter64: 19701299118
            IF-MIB::ifHCOutUcastPkts.3 = Counter64: 0
            IF-MIB::ifHCOutMulticastPkts.1 = Counter64: 0
            IF-MIB::ifHCOutMulticastPkts.2 = Counter64: 0
            IF-MIB::ifHCOutMulticastPkts.3 = Counter64: 0
            IF-MIB::ifHCOutBroadcastPkts.1 = Counter64: 0
            IF-MIB::ifHCOutBroadcastPkts.2 = Counter64: 0
            IF-MIB::ifHCOutBroadcastPkts.3 = Counter64: 0
            IF-MIB::ifLinkUpDownTrapEnable.1 = INTEGER: disabled(2)
            IF-MIB::ifLinkUpDownTrapEnable.2 = INTEGER: disabled(2)
            IF-MIB::ifLinkUpDownTrapEnable.3 = INTEGER: disabled(2)
            IF-MIB::ifHighSpeed.1 = Gauge32: 1000
            IF-MIB::ifHighSpeed.2 = Gauge32: 1000
            IF-MIB::ifHighSpeed.3 = Gauge32: 1000
            IF-MIB::ifPromiscuousMode.1 = INTEGER: true(1)
            IF-MIB::ifPromiscuousMode.2 = INTEGER: true(1)
            IF-MIB::ifPromiscuousMode.3 = INTEGER: true(1)
            IF-MIB::ifConnectorPresent.1 = INTEGER: true(1)
            IF-MIB::ifConnectorPresent.2 = INTEGER: true(1)
            IF-MIB::ifConnectorPresent.3 = INTEGER: true(1)
            IF-MIB::ifAlias.1 = STRING:
            IF-MIB::ifAlias.2 = STRING:
            IF-MIB::ifAlias.3 = STRING:​

            Comment

            • Freezstyler
              Member
              • Oct 2022
              • 39

              #7
              Nějaké další nápady prosím?

              Comment

              • bitboy
                Member
                Zabbix Certified Trainer
                Zabbix Certified SpecialistZabbix Certified Professional
                • Apr 2014
                • 37

                #8
                Ten snmpwalk robite z tej istej Zabbix proxy ako je vykonavany discovery rule a aj s rovnakym CN a IP adresou?

                Skusil by som vyuzit konfiguraciu kluca pre discovery rule bez sucasneho vyuzitia oboch tabuliek. Napr:
                discovery[{#IFOPERSTATUS},1.3.6.1.2.1.2.2.1.8,{#IFADMINSTATU S},1.3.6.1.2.1.2.2.1.7,{#IFDESCR },1.3.6.1.2.1.2.2.1.2,{#IFTYPE},1.3.6.1.2.1.2.2.1. 3]
                alebo
                discovery[{#IFALIAS},1.3.6.1.2.1.31.1 .1.1.18,{#IFNAME},1.3.6.1.2.1.31.1.1.1.1]

                Comment

                • Freezstyler
                  Member
                  • Oct 2022
                  • 39

                  #9
                  Snmpwalk dělám z PC které je za VPN a vidí do sítě. Na server Zabbixu nemám momentálně přístup (jen do GUI).

                  Pokud použiju toto discovery: discovery[{#IFALIAS},1.3.6.1.2.1.31.1.1.1.18,{#IFNAME},1.3.6 .1.2.1.31.1.1.1.1]

                  tak dostanu opět jen jeden ethernet [{"{#SNMPINDEX}":"5","{#IFALIAS}":" ","{#IFNAME}":"BT Eth1/SFP1"}] a já bych v jednom discovery potřeboval načíst všechny ethernety z daného rádia jako to funguje třeba u switchů a dalších zařízení.

                  Comment

                  • bitboy
                    Member
                    Zabbix Certified Trainer
                    Zabbix Certified SpecialistZabbix Certified Professional
                    • Apr 2014
                    • 37

                    #10
                    Ja rozumiem tomu, co je Vas ciel. Snazim sa takto tazkopadne robit troubleshooting vasho problemu a identifikovat, ci pricinou je sietova vrstva, monitorovane zariadenie alebo Zabbix server/proxy. Bolo by idealne vyskusat ten sqnmp walk z toho isteho servera, kde bezi Zabbix proxy/server, ktory ma tento problem a s rovnakym CN. Zjavne ma Zabbix server/proxy problem ziskat vsetky instancie SNMP objektu v danej tabulke (ziska len jednu a aj to s nespravym indexom). Skuste este spravit tento snmpwalk:

                    snmpwalk -v2c -c (vymazaná komunita) (vymazané IP) 1.3.6.1.2.1.31.1.1.1.1

                    Ak bezite na danom Zabbix serveri/proxy aj Zabbix agenta s povolenym system.run itemom pre vykonanie remote commands, mohlo by sa vam podarit vykonat snmpwalk cez konfiguraciu Zabbix scriptu (aj ked pochybujem, ze mate system.run povoleny).

                    Comment

                    • Freezstyler
                      Member
                      • Oct 2022
                      • 39

                      #11
                      Pokud dám: snmpwalk -v2c -c (vymazaná komunita) (vymazané IP) 1.3.6.1.2.1.31.1.1.1.1​

                      Dostanu toto:

                      IF-MIB::ifName.5 = STRING: BT Eth1/SFP1

                      Přitom když v tom dotazu smažu poslední jedničku, tak jsou indexy správně:

                      1.3.6.1.2.1.31.1.1.1

                      IF-MIB::ifName.1 = STRING: BT Eth1/SFP1
                      IF-MIB::ifName.2 = STRING: BT Eth2
                      IF-MIB::ifName.3 = STRING: BT SFP2
                      IF-MIB::ifInMulticastPkts.1 = Counter32: 0
                      IF-MIB::ifInMulticastPkts.2 = Counter32: 0
                      IF-MIB::ifInMulticastPkts.3 = Counter32: 0​

                      Večer dostanu přístup na Zabbix server a zkusím to odtud, ale zkoušel to teď zrychleně kolega a dostal stejný výsledek jako já.

                      Comment

                      • Freezstyler
                        Member
                        • Oct 2022
                        • 39

                        #12
                        Tak i ze serveru Zabbixu je výsledek stejný.

                        Comment

                        • hermanekt
                          Member
                          Zabbix Certified Trainer
                          Zabbix Certified SpecialistZabbix Certified Professional
                          • Aug 2019
                          • 59

                          #13
                          Zdravim Vas,

                          nevim zda to uplne pomuze ale pokud se vypne BULK tak by to mohlo pomoci. Dneska vysel opravny fix: https://support.zabbix.com/browse/ZBXNEXT-4428 Tohle se delo hlavne v kombinaci s vyuzitim proxy. V tom nasem case, se to chovalo tak, ze to proste velkou cast komunikace zahodi a neni to nikde videt. Rychly test, je tak, ze se vypne bulk. Udela se config cache reload a pak se to zkusi znovu.

                          Comment

                          • krb
                            Junior Member
                            • Dec 2022
                            • 1

                            #14
                            Uz je to doba, co jsem resil discovery na summita a skoncil jsem se stejnym vysledkem. Tenkrat jsem to vyresil bez discovery, protoze ma summit stale stejne indexy ethernetu.
                            At jsem postavil discovery jakkoliv, vzdy jsem dostal index pouze 5.

                            Comment

                            • bitboy
                              Member
                              Zabbix Certified Trainer
                              Zabbix Certified SpecialistZabbix Certified Professional
                              • Apr 2014
                              • 37

                              #15
                              Je tu moznost vyskusat novy discovering pre SNMP cez kluc walk prichadzajuci vo verzii 6.4:
                              https://www.zabbix.com/documentation...snmp_oids_walk
                              Last edited by bitboy; 27-02-2023, 03:45.

                              Comment

                              Working...