I have four machines running Ubuntu 14.04, one is a software router and the others connect to it. I installed NTP on each of them.
What I want is to synchronize clocks among these four machines, with the router acting as the NTP server and the other machines acting as NTP clients. For some reason, the router cannot access any external NTP servers. But I don't think that's a problem, because I only want to synchronize these four machines.
However, after some time, I found that it seems necessary to access an external NTP server.
Do I really need to access an external NTP server? Can I just somehow build a pure internal NTP system for these four machines?
You have a couple of options depending on your needs and budget. You are correct in that access to external NTP servers is best (if you don't have your own stratum 0 source) in fact NTP needs at least 3 hosts to work correctly.
I wouldn't let a router run the NTP service - I wouldn't like to say how accurate it might keep things free running. If you must use the router allow it to access an external good NTP server.
You could use one of the computers and allow them access to some external NTP severs.
Or you could get yourself a OEM GPS receiver and run your own stratum 0 time service internally without access to any external hosts.
If you can't do any of that then yes you could run a pure internal only time system but what would you reference the clocks against ? You could keep everything in check but it might be 10/20/100 min's out if left to its own devices.
The NTP Docs here give some useful reading.
If you want some specific config help please update your question with the
ntp.conf files and the output from