1 NTP SNMP subagent for Net-SNMP
5 - install net-snmp from source (configure, make;, make install)
6 - edit the snmpd configuration file (/usr/local/share/snmp/snmpd.conf):
9 agentXSocket tcp:localhost:705
10 and check which read-only community is configured (should be "rocommunity public")
11 - start snmpd (sudo /usr/local/sbin/snmpd) and check that it is running correctly by running the command
12 snmpwalk -v2c -c public localhost
13 (which should output a lot of data values for the supported built-in MIBs of net-snmp)
14 - build the libntpq and the libntp library
15 - build the ntpsnmpd application (make) and run it (./ntpsnmpd)
17 snmpwalk -v2c -c public localhost enterprises.5597.99
18 which should give you a list of all currently supported NTP MIB objects and their current values
20 Please 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).
21 The final OID has to be registered with IANA and this is done by the RFC Editor when the NTPv4 MIB RFC is standardized.
22 I will try to do this earlier in order to be able to have a working solution at the end of this project.
24 In its current state the daemon supports these objects:
28 ntpEntSoftwareVersionVal
32 ntpEntTimeResolutionVal
34 ntpEntTimePrecisionVal
37 They all use the libntpq library to access information from the ntpd instance with mode 6 packets.
39 Next step is to implement the status section of the MIB (section 2).