Everybody knows NTP, except AS/400 administrators. This is why it’s important to start working with i5/OS, and learn about the improvements IBM has made.
Since V5R3, Timezone support was added to i5/OS, and so was support for NTP (both client and server). NTP is very important in todays networked environment:
- For security reasons – logfiles from different sources need matching timestamps
- For business reasons – certain things need to happen at the right time
- For technical reasons – e.G. Kerberos needs a matching time for proper granting of tickets (also see #1)
NTP on i5/OS only works on newer machines – you can’t use NTP with older machines like the Modell 170 (but you shouldn’t be using them anymore anyway). It works fine on models 270, 800, and all recent 5xx models.
Configuring NTP on i5/OS is a one liner, but there is more that needs to be considered. Usually you’ll need a central timeserver in your network that serves out time to all other servers and clients. If you’re using Active Directory, you’ll already have a central timeserver – the domain controller which holds the PDC FSMO role is the primary timeserver in your network. If you’re not using Active Directory, you’ll need to designate a timeserver in your network, and run an NTP server on that machine – this could be your System i, or any other machine capable of running an NTP server.
Sounds complicated? It really isn’t – if you have some networking guys, ask them what they’re using for an NTP server, as routers and switches have the same problem. If you have dedicated Windows administrators, they’ll also know a lot about NTP. If you have neither, you can use an external timeserver like swisstime.ethz.ch or time.nist.gov (for the US residents).
As said, configuration is a oneliner.
CHGNTPA RMTSYS('swisstime.ethz.ch') AUTOSTART(*YES)
STRTCPSVR SERVER(*NTP) NTPSRV(*CLIENT)
Okay, that was actually two lines but the start command is included. That’s it. You’re done. You’ll still need a roughly correct time, otherwise the NTP client won’t adjust the time. And you’ll need a properly set QTIMZON value, because otherwise you’ll get the wrong time.