from: troglobit.com/howto/snmp/
This mini HowTo describes how to use the SNMP client tools to retrieve human readable information from devices running an SNMP daemon. In the examples below
mini-snmpd
is used as the daemon and as client both the command line net-snmp tool and the snmpB GUI are used.
Installing SNMP in Ubuntu
The following commands installs snmpset/get/walk, base MIBs and all the standard MIBs needed:
sudo apt-get install snmp libsnmp-base snmp-mibs-downloader
sudo download-mibs
You have to also edit the file
/etc/snmp/snmp.conf
to enable automatic loading of the downloaded MIBs, which is disabled by default. Comment out the line that reads:
mibs :
Assuming you have already started
mini_snmpd,
say using port 16161 so it doesn’t have to run as root, you can now talk to it using:
snmpwalk -v2c -c public 127.0.0.1:16161
snmpget -c public -v 2c 127.0.0.1:16161 system.sysUpTime.0
Installing Private MIB files
If you want to access a router/switch which uses private MIBs you can do the same as I did for the UCD-SNMP-MIB:
mkdir -p ~/.snmp/mibs
cp COMPANY-SOME-MIB COMPANY-OID-MIB ~/.snmp/mibs/
cat << EOF > ~/.snmp/snmp.conf
# mibdirs /usr/share/snmp/mibs:/usr/share/mibs/ietf:/usr/share/mibs/iana:/usr/share/mibs/irtf:/usr/share/mibs/tubs
mibdirs $HOME/.snmp/mibs
mibs +COMPANY-SOME-MIB
mibs +COMPANY-OID-MIB
EOF
Now you should be able to do this:
snmpset -c private -v 2c 192.168.2.200 COMPANY-SOME-MIB::reboot.0 i 1
which is quite an improvement over:
snmpset -c private -v 2c 192.168.2.200 1.3.6.1.4.1.16177.2.1.1.1.0 i 1
Useful Tests
Walk all IP addresses
snmpwalk -v2c -c public 192.168.2.20 1.3.6.1.2.1.4.20
Get loadavg
snmpwalk -v2c -c public 127.0.0.1:16161 UCD-SNMP-MIB::laLoad
For more tips on using snmpwalk, see the Net-SNMP wiki
trouble shooting
On earlier versions of Ubuntu (pre 18.04) I’ve had trouble getting net-snmp to use the UCD-SNMP-MIB, so I’ve added it explicitly to my ~/snmp/snmp.conf:
mibs +UCD-SNMP-MIB
This MIB is in /usr/share/snmp/mibs/ on my system …