1258945SrobertoNTP SNMP subagent for Net-SNMP 2258945Sroberto 3258945SrobertoInstallation Guides: 4258945Sroberto 5258945Sroberto- install net-snmp from source (configure, make;, make install) 6258945Sroberto- edit the snmpd configuration file (/usr/local/share/snmp/snmpd.conf): 7258945Sroberto add the lines 8258945Sroberto master agentx 9258945Sroberto agentXSocket tcp:localhost:705 10258945Sroberto and check which read-only community is configured (should be "rocommunity public") 11258945Sroberto- start snmpd (sudo /usr/local/sbin/snmpd) and check that it is running correctly by running the command 12258945Sroberto snmpwalk -v2c -c public localhost 13258945Sroberto (which should output a lot of data values for the supported built-in MIBs of net-snmp) 14258945Sroberto- build the libntpq and the libntp library 15258945Sroberto- build the ntpsnmpd application (make) and run it (./ntpsnmpd) 16258945Sroberto- now you can run 17258945Sroberto snmpwalk -v2c -c public localhost enterprises.5597.99 18258945Sroberto which should give you a list of all currently supported NTP MIB objects and their current values 19258945Sroberto 20258945SrobertoPlease note that currently I use a private MIB OID (enterprises.5597 is the Meinberg top level OEM OID and 99 is my temporary working space for this project). 21258945SrobertoThe final OID has to be registered with IANA and this is done by the RFC Editor when the NTPv4 MIB RFC is standardized. 22258945SrobertoI will try to do this earlier in order to be able to have a working solution at the end of this project. 23258945Sroberto 24258945SrobertoIn its current state the daemon supports these objects: 25258945Sroberto 26258945SrobertontpEntSoftwareName 27258945SrobertontpEntSoftwareVersion 28258945SrobertontpEntSoftwareVersionVal 29258945SrobertontpEntSoftwareVendor 30258945SrobertontpEntSystemType 31258945SrobertontpEntTimeResolution 32258945SrobertontpEntTimeResolutionVal 33258945SrobertontpEntTimePrecision 34258945SrobertontpEntTimePrecisionVal 35258945SrobertontpEntTimeDistance 36258945Sroberto 37258945SrobertoThey all use the libntpq library to access information from the ntpd instance with mode 6 packets. 38258945Sroberto 39258945SrobertoNext step is to implement the status section of the MIB (section 2). 40258945Sroberto 41