Page MenuHomeVyOS Platform

The information provided by SNMP is incomplete
Closed, InvalidPublicBUG

Assigned To
None
Authored By
jack9603301
Jul 9 2020, 9:17 AM
Referenced Files
F824925: get_mibdata.txt
Aug 17 2020, 2:54 AM
F824915: get_mibdata.txt
Aug 17 2020, 2:39 AM
F824914: oids.txt
Aug 17 2020, 2:39 AM

Description

At present, I can only use the SNMP protocol to capture and interface, IPv4 and IPv6 limited information. I can't get most oid data from SNMP V3, including STP and IPv6 Routing Information of the bridge. Is it caused by incomplete implementation of SNMP.

The configuration is as follows:

community public {
    authorization ro
    network 192.168.0.0/16
    network fc00:470:f1cd::/48
}
listen-address 192.168.0.1 {
    port 161
}
listen-address fc00:470:f1cd::1 {
}
location HOME
v3 {
    engineid 0xff42
    group public {
        mode ro
        seclevel auth
        view public
    }
    user vyos {
        auth {
            plaintext-key key
            type md5
        }
        group public
        mode ro
        privacy {
            plaintext-key key
            type aes
        }
    }
    view public {
        oid 1 {
        }
    }
}

Details

Difficulty level
Unknown (require assessment)
Version
1.3-rolling-202007060117
Why the issue appeared?
Will be filled on close
Is it a breaking change?
Unspecified (possibly destroys the router)
Issue type
Improvement (missing useful functionality)

Event Timeline

We use net-snmp as SNMP server and can only provide the OIDs it supports. Please be more verbose what is missing and what is expected.

The list of oids currently supported by vyos is as follows:

However, currently, only part of oid data related to ipv4 can be effectively obtained, such as:

#ipRouteEntry
vyos@vyos:~$ snmpwalk -v 3 -c public fc00:470:f1cd::1 -X password -u vyos -A password -a sha -l authPriv -x AES  1.3.6.1.2.1.4.21.1
IP-MIB::ip.21.1.1.0.0.0.0 = IpAddress: 0.0.0.0
IP-MIB::ip.21.1.1.100.64.0.1 = IpAddress: 100.64.0.1
IP-MIB::ip.21.1.1.192.168.0.0 = IpAddress: 192.168.0.0
IP-MIB::ip.21.1.1.192.168.101.0 = IpAddress: 192.168.101.0
IP-MIB::ip.21.1.2.0.0.0.0 = INTEGER: 13
IP-MIB::ip.21.1.2.100.64.0.1 = INTEGER: 13
IP-MIB::ip.21.1.2.192.168.0.0 = INTEGER: 12
IP-MIB::ip.21.1.2.192.168.101.0 = INTEGER: 11
IP-MIB::ip.21.1.3.0.0.0.0 = INTEGER: 0
IP-MIB::ip.21.1.3.100.64.0.1 = INTEGER: 0
IP-MIB::ip.21.1.3.192.168.0.0 = INTEGER: 0
IP-MIB::ip.21.1.3.192.168.101.0 = INTEGER: 0
IP-MIB::ip.21.1.7.0.0.0.0 = IpAddress: 0.0.0.0
IP-MIB::ip.21.1.7.100.64.0.1 = IpAddress: 0.0.0.0
IP-MIB::ip.21.1.7.192.168.0.0 = IpAddress: 0.0.0.0
IP-MIB::ip.21.1.7.192.168.101.0 = IpAddress: 0.0.0.0
IP-MIB::ip.21.1.8.0.0.0.0 = INTEGER: 3
IP-MIB::ip.21.1.8.100.64.0.1 = INTEGER: 3
IP-MIB::ip.21.1.8.192.168.0.0 = INTEGER: 3
IP-MIB::ip.21.1.8.192.168.101.0 = INTEGER: 3
IP-MIB::ip.21.1.9.0.0.0.0 = INTEGER: 2
IP-MIB::ip.21.1.9.100.64.0.1 = INTEGER: 2
IP-MIB::ip.21.1.9.192.168.0.0 = INTEGER: 2
IP-MIB::ip.21.1.9.192.168.101.0 = INTEGER: 2
IP-MIB::ip.21.1.11.0.0.0.0 = IpAddress: 0.0.0.0
IP-MIB::ip.21.1.11.100.64.0.1 = IpAddress: 255.255.255.255
IP-MIB::ip.21.1.11.192.168.0.0 = IpAddress: 255.255.255.0
IP-MIB::ip.21.1.11.192.168.101.0 = IpAddress: 255.255.255.0
IP-MIB::ip.21.1.13.0.0.0.0 = OID: SNMPv2-SMI::zeroDotZero
IP-MIB::ip.21.1.13.100.64.0.1 = OID: SNMPv2-SMI::zeroDotZero
IP-MIB::ip.21.1.13.192.168.0.0 = OID: SNMPv2-SMI::zeroDotZero
IP-MIB::ip.21.1.13.192.168.101.0 = OID: SNMPv2-SMI::zeroDotZero
# ipv6RouteEntry
vyos@vyos:~$ snmpwalk -v 3 -c public fc00:470:f1cd::1 -X password -u vyos -A password -a sha -l authPriv -x AES  1.3.6.1.2.1.55.1.11.1
IPV6-MIB::ipv6RouteEntry = No Such Object available on this agent at this OID
#ipAddressPrefixEntry
vyos@vyos:~$ snmpwalk -v 3 -c public fc00:470:f1cd::1 -X password -u vyos -A password -a sha -l authPriv -x AES  1.3.6.1.2.1.4.32.1
IP-MIB::ipAddressPrefixOrigin.1.ipv4."127.0.0.0".8 = INTEGER: manual(2)
IP-MIB::ipAddressPrefixOrigin.1.ipv6."00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:01".128 = INTEGER: manual(2)
IP-MIB::ipAddressPrefixOrigin.1.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".64 = INTEGER: wellknown(3)
IP-MIB::ipAddressPrefixOrigin.3.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".64 = INTEGER: wellknown(3)
IP-MIB::ipAddressPrefixOrigin.7.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".64 = INTEGER: wellknown(3)
IP-MIB::ipAddressPrefixOrigin.11.ipv4."192.168.101.0".24 = INTEGER: manual(2)
IP-MIB::ipAddressPrefixOrigin.11.ipv6."24:0e:00:fe:8c:a3:2e:01:00:00:00:00:00:00:00:00".64 = INTEGER: manual(2)
IP-MIB::ipAddressPrefixOrigin.11.ipv6."fc:00:04:70:f1:cd:01:01:00:00:00:00:00:00:00:00".64 = INTEGER: manual(2)
IP-MIB::ipAddressPrefixOrigin.11.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".64 = INTEGER: wellknown(3)
IP-MIB::ipAddressPrefixOrigin.12.ipv4."192.168.0.0".24 = INTEGER: manual(2)
IP-MIB::ipAddressPrefixOrigin.12.ipv6."24:0e:00:fe:8c:a3:2e:02:00:00:00:00:00:00:00:00".64 = INTEGER: manual(2)
IP-MIB::ipAddressPrefixOrigin.12.ipv6."fc:00:04:70:f1:cd:00:00:00:00:00:00:00:00:00:00".64 = INTEGER: manual(2)
IP-MIB::ipAddressPrefixOrigin.12.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".64 = INTEGER: wellknown(3)
IP-MIB::ipAddressPrefixOrigin.13.ipv4."100.64.104.207".32 = INTEGER: manual(2)
IP-MIB::ipAddressPrefixOrigin.13.ipv6."24:0e:00:fc:00:7d:76:cb:00:00:00:00:00:00:00:00".64 = INTEGER: routeradv(5)
IP-MIB::ipAddressPrefixOrigin.13.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".10 = INTEGER: wellknown(3)
IP-MIB::ipAddressPrefixOnLinkFlag.1.ipv4."127.0.0.0".8 = INTEGER: true(1)
IP-MIB::ipAddressPrefixOnLinkFlag.1.ipv6."00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:01".128 = INTEGER: true(1)
IP-MIB::ipAddressPrefixOnLinkFlag.1.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".64 = INTEGER: true(1)
IP-MIB::ipAddressPrefixOnLinkFlag.3.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".64 = INTEGER: true(1)
IP-MIB::ipAddressPrefixOnLinkFlag.7.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".64 = INTEGER: true(1)
IP-MIB::ipAddressPrefixOnLinkFlag.11.ipv4."192.168.101.0".24 = INTEGER: true(1)
IP-MIB::ipAddressPrefixOnLinkFlag.11.ipv6."24:0e:00:fe:8c:a3:2e:01:00:00:00:00:00:00:00:00".64 = INTEGER: true(1)
IP-MIB::ipAddressPrefixOnLinkFlag.11.ipv6."fc:00:04:70:f1:cd:01:01:00:00:00:00:00:00:00:00".64 = INTEGER: true(1)
IP-MIB::ipAddressPrefixOnLinkFlag.11.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".64 = INTEGER: true(1)
IP-MIB::ipAddressPrefixOnLinkFlag.12.ipv4."192.168.0.0".24 = INTEGER: true(1)
IP-MIB::ipAddressPrefixOnLinkFlag.12.ipv6."24:0e:00:fe:8c:a3:2e:02:00:00:00:00:00:00:00:00".64 = INTEGER: true(1)
IP-MIB::ipAddressPrefixOnLinkFlag.12.ipv6."fc:00:04:70:f1:cd:00:00:00:00:00:00:00:00:00:00".64 = INTEGER: true(1)
IP-MIB::ipAddressPrefixOnLinkFlag.12.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".64 = INTEGER: true(1)
IP-MIB::ipAddressPrefixOnLinkFlag.13.ipv4."100.64.104.207".32 = INTEGER: true(1)
IP-MIB::ipAddressPrefixOnLinkFlag.13.ipv6."24:0e:00:fc:00:7d:76:cb:00:00:00:00:00:00:00:00".64 = INTEGER: true(1)
IP-MIB::ipAddressPrefixOnLinkFlag.13.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".10 = INTEGER: true(1)
IP-MIB::ipAddressPrefixAutonomousFlag.1.ipv4."127.0.0.0".8 = INTEGER: false(2)
IP-MIB::ipAddressPrefixAutonomousFlag.1.ipv6."00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:01".128 = INTEGER: false(2)
IP-MIB::ipAddressPrefixAutonomousFlag.1.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".64 = INTEGER: false(2)
IP-MIB::ipAddressPrefixAutonomousFlag.3.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".64 = INTEGER: false(2)
IP-MIB::ipAddressPrefixAutonomousFlag.7.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".64 = INTEGER: false(2)
IP-MIB::ipAddressPrefixAutonomousFlag.11.ipv4."192.168.101.0".24 = INTEGER: false(2)
IP-MIB::ipAddressPrefixAutonomousFlag.11.ipv6."24:0e:00:fe:8c:a3:2e:01:00:00:00:00:00:00:00:00".64 = INTEGER: false(2)
IP-MIB::ipAddressPrefixAutonomousFlag.11.ipv6."fc:00:04:70:f1:cd:01:01:00:00:00:00:00:00:00:00".64 = INTEGER: false(2)
IP-MIB::ipAddressPrefixAutonomousFlag.11.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".64 = INTEGER: false(2)
IP-MIB::ipAddressPrefixAutonomousFlag.12.ipv4."192.168.0.0".24 = INTEGER: false(2)
IP-MIB::ipAddressPrefixAutonomousFlag.12.ipv6."24:0e:00:fe:8c:a3:2e:02:00:00:00:00:00:00:00:00".64 = INTEGER: false(2)
IP-MIB::ipAddressPrefixAutonomousFlag.12.ipv6."fc:00:04:70:f1:cd:00:00:00:00:00:00:00:00:00:00".64 = INTEGER: false(2)
IP-MIB::ipAddressPrefixAutonomousFlag.12.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".64 = INTEGER: false(2)
IP-MIB::ipAddressPrefixAutonomousFlag.13.ipv4."100.64.104.207".32 = INTEGER: false(2)
IP-MIB::ipAddressPrefixAutonomousFlag.13.ipv6."24:0e:00:fc:00:7d:76:cb:00:00:00:00:00:00:00:00".64 = INTEGER: true(1)
IP-MIB::ipAddressPrefixAutonomousFlag.13.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".10 = INTEGER: false(2)
IP-MIB::ipAddressPrefixAdvPreferredLifetime.1.ipv4."127.0.0.0".8 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvPreferredLifetime.1.ipv6."00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:01".128 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvPreferredLifetime.1.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".64 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvPreferredLifetime.3.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".64 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvPreferredLifetime.7.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".64 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvPreferredLifetime.11.ipv4."192.168.101.0".24 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvPreferredLifetime.11.ipv6."24:0e:00:fe:8c:a3:2e:01:00:00:00:00:00:00:00:00".64 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvPreferredLifetime.11.ipv6."fc:00:04:70:f1:cd:01:01:00:00:00:00:00:00:00:00".64 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvPreferredLifetime.11.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".64 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvPreferredLifetime.12.ipv4."192.168.0.0".24 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvPreferredLifetime.12.ipv6."24:0e:00:fe:8c:a3:2e:02:00:00:00:00:00:00:00:00".64 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvPreferredLifetime.12.ipv6."fc:00:04:70:f1:cd:00:00:00:00:00:00:00:00:00:00".64 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvPreferredLifetime.12.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".64 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvPreferredLifetime.13.ipv4."100.64.104.207".32 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvPreferredLifetime.13.ipv6."24:0e:00:fc:00:7d:76:cb:00:00:00:00:00:00:00:00".64 = Gauge32: 172680 seconds
IP-MIB::ipAddressPrefixAdvPreferredLifetime.13.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".10 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvValidLifetime.1.ipv4."127.0.0.0".8 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvValidLifetime.1.ipv6."00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:01".128 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvValidLifetime.1.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".64 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvValidLifetime.3.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".64 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvValidLifetime.7.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".64 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvValidLifetime.11.ipv4."192.168.101.0".24 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvValidLifetime.11.ipv6."24:0e:00:fe:8c:a3:2e:01:00:00:00:00:00:00:00:00".64 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvValidLifetime.11.ipv6."fc:00:04:70:f1:cd:01:01:00:00:00:00:00:00:00:00".64 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvValidLifetime.11.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".64 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvValidLifetime.12.ipv4."192.168.0.0".24 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvValidLifetime.12.ipv6."24:0e:00:fe:8c:a3:2e:02:00:00:00:00:00:00:00:00".64 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvValidLifetime.12.ipv6."fc:00:04:70:f1:cd:00:00:00:00:00:00:00:00:00:00".64 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvValidLifetime.12.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".64 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvValidLifetime.13.ipv4."100.64.104.207".32 = Gauge32: 4294967295 seconds
IP-MIB::ipAddressPrefixAdvValidLifetime.13.ipv6."24:0e:00:fc:00:7d:76:cb:00:00:00:00:00:00:00:00".64 = Gauge32: 259080 seconds
IP-MIB::ipAddressPrefixAdvValidLifetime.13.ipv6."fe:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00".10 = Gauge32: 4294967295 seconds
vyos@vyos:~$ 
#ipv6AddrPrefixEntry
vyos@vyos:~$ snmpwalk -v 3 -c public fc00:470:f1cd::1 -X password -u vyos -A password -a sha -l authPriv -x AES  1.3.6.1.2.1.55.1.7.1
IPV6-MIB::ipv6AddrPrefixEntry = No Such Object available on this agent at this OID

It is known that there is almost no way to monitor oid data and most other data of ipv6

This comment was removed by jack9603301.

Please file feature request with net-snmp.

Sorry, I don't understand what you mean. Can you tell me more about it? What is using net-snmp to submit feature requests?

Its not a bug of VyOS. The net-snmp linux package we utilize does not support more OIDs.

erkin set Issue type to Improvement (missing useful functionality).Aug 29 2021, 1:53 PM
erkin removed a subscriber: Active contributors.