Lingo VOIP, Time Servers, NTS, ReplayTV

If a purpose of a weblog is to document important things so that others can find them .. I'm obligated to share the following.  It's not medically related.  Medical readers please ignore this .. geeks are welcome to follow along for your reading pleasure.

Our home network has three replayTVs, a win2k server, an Iomega u300 270 GB NAS (RAID level 5) .. running through a Smoothwall Linux firewall, Linksys 24 port 10/100 switch,  a Lingo VOIP ATA and (finally) a Time Warner-supplied Toshiba cable modem .. which attaches us to Earthlink Broadband (essentially Time Warner RoadRunner).

I'll spare you the links to any of the above .. google will get you there rather easily.

We love the replayTVs as they allow us to avoid commercials.  We almost never watch "live TV" anymore.  We can also watch things when we want to – rather than when they are on.  Alias and West Wing are on at the same time, but we can alwasy see them.  Two weeks ago, we forgot to record Alias .. so I used Poopli to get it.  Cool.  We can also watch a show in the bedroom that was recorded in the Family Room.  Until …

Over the last few weeks, the replayTVs stopped reliably talking to each other.  Rebooting sometimes helped .. but I couldn't figure out what in the world was going on.

Last night I invested (wasted?) three hours and figured this all out.

After researching similar issues on the REplayTV FAQ and the AVS replyayTV forums, I learned that this problem is often due to the ReplayTVs having different TIME settings.  A difference of over 30 seconds is bad.

So I went through the processes that everyone suggested to cause the devices to "phone home" and find out from the ReplayTV mother ship what time it really is.  They're using a NTS protocol .. which runs on UDP port 123, BTW.

But none of the devices could get a new time!

So I looked at the firewall settings to amke sure that port 123 was open .. and it sure was ..

And then I looked in the firewall logs and saw that the poor firewall hadn't updated its time successfully in weeks.  Every time it tried to call a time server, it failed.

So I logged in to the Lingo ATA .. which was no small task.  I still can't get in with the admin password (thinking maybe that would have helped me to solve the problem .. so if anyone knows how .. let me know!) .. but the user password (username: user – password = ph3taswe) .. log in to through a browser .. and I noticed that the ATA has successfully made IP entries for DNS servers (it's getting DHCP from Roadrunner) but that it also has an entry for NTS .. which says "0" … so I'm guessing that the ATA is intercepting all NTS requests and sending them to the NTS that it knows about … which .. in this case .. is "0" .. so all NTS requests fail.

I'll bet that if I could get in to the admin interface, I could change the NTS address to something useful (it even looks like the Roadrunner DNS servers are running NTS) .. but I can't.

So at this point (1 AM last night) .. I had two choices:

a) Connect the firewall directly to the cable modem.  This would cause me to lose the QOS that the ATA presumably is giving me (though this may motivate me to add a QOS mod to the firewall).

b) Install NTS on the Win2Kserver .. and use the firewall to redirect all requests to UDP port 123 over to that server.  The time would be consistent within the network – even though they would not likely be "right" according to the Atomic clock.

I Chose option "a" since I want the ReplayTVs to work with Poopli . and I think that other ReplayTVs will need to be able to talk to mine .. so they will all need to agree on the time.

This option worked.  ReplayTVs now can tell the time, and Lingo phone quality doesn't seem too bad.  We'll see what happens when streaming TV shows across the network.