NTP looks like a housekeeping topic right up until you are correlating an outage across three routers and none of the timestamps line up. Synchronized clocks are what make logs comparable between devices, and they matter for certificate validation and for any authentication scheme with a time component. NTP is also an unusually good teacher of patience and diagnosis, because nothing about it fails loudly. A mismatched authentication key produces no error at all, and the client simply never trusts the server. An unreachable time source produces no error either; the router just sits at stratum 16 forever. And a config that is completely correct still looks broken for the first few minutes, because convergence takes several polling cycles. You cannot learn the difference between not synced yet and genuinely misconfigured by reading about it. You learn it by watching the reach counter climb.
These labs build the full hierarchy on real Cisco IOS in Cisco Modeling Labs. You make one router the authoritative source with ntp master, point clients at it with ntp server, and confirm the result with show ntp status and show ntp associations, checking that the client landed one stratum above the source, that the asterisk marks the peer actually selected, and that reach has climbed to 377. You then lock it down with ntp authenticate, ntp authentication-key, and ntp trusted-key, binding the key to the association on the client side. Presentation gets its own treatment: clock timezone and clock summer-time recurring for local time, and service timestamps log datetime msec localtime show-timezone so log messages carry wall-clock time instead of uptime. Troubleshooting labs give you the silent failures, a key mismatch, an unreachable source, and an ACL dropping UDP 123, and your export is graded requirement by requirement against the answer key.