Search code examples
linuxubuntusnmp

What does "No more variables left in this MIB View" mean (Linux)?


On Ubuntu 12.04 I am tring to get the subtree of management values with the following command:

snmpwalk -v 2c -c public localhost 

with the last line of the output being

iso.3.6.1.2.1.25.1.7.0 = No more variables left in this MIB View (It is past the end of the MIB tree)

Is this an error? A warning? Does the subtree end there?


Solution

  • There's a bit more going on here than you might suspect. I encounter this on every new Ubuntu box that I build, and I do consider it a problem (not an error, but a problem--more on this down further).

    Here's the technically-correct explanation (why this is not an "error"):

    "No more variables left in this MIB View" is not particularly an error; rather, it is a statement about your request. The request started at something simple, say .1.3 and continued to ask for the "next" lexicographic OID. It got "next" OIDs until that last one, at which point the agent has informed you that there's nothing more to see; don't bother asking.

    Now, here's why I consider it a problem (in the context of this question):

    The point of installing snmpd and running it is to gather meaningful information about the box; typically, this information is performance-oriented. For example, the three general things that I need to know about are network-interface information (IF-MIB::ifHCInOctets and IF-MIB::ifHCOutOctets), disk information (UCD-SNMP-MIB::dskUsed and UCD-SNMP-MIB::dskTotal), and CPU information (UCD-SNMP-MIB::ssCpuRawIdle, UCD-SNMP-MIB::ssCpuRawWait, and so on).

    The default Ubuntu snmpd configuration specifically denies just about everything useful with this configuration (limiting access to just enough information to tell you that the box is a Linux box):

    view systemonly included .1.3.6.1.2.1.1
    view systemonly included .1.3.6.1.2.1.25.1
    rocommunity public default -V systemonly
    

    This configuration locks the box down, which may be "safe" if it will be on an insecure network with little SNMP administration knowledge available.

    However, the first thing that I do is remove the -V systemonly portion of the rocommunity setting; this will allow all available SNMP information to be accessed (read-only) via the community string of public.

    If you do that, then you'll probably see what you're expecting, which is pages and pages of SNMP information that you can use to gauge the performance of your box.