What is it?

OmniSync is a driver for NTPd for people who are firewall-challenged. It enables systems to sync time when port 123 (UDP) is blocked.
It allows you to sync against the daytime service (port 13 tcp/udp), time (port 37 tcp/udp), SNTS, ICMP, SNMP, precision time protocol (PTP - IEEE 1588), (S)NTP via a socks5 proxy server, http and https (both also via proxy server).
It doesn't directly set the clock but uses NTPd for this as this enables you to have multiple time sources as well as bad-chimer detection etc.

Do you know of some other protocol which includes a timestamp? Please tell me about it so that I can include support for it in OmniSync.



The latest source code is on github.

Download link:omnisync-1.0.tgz


1.0can now bind to a specific network adapter, added ntp implementation that binds to unprivileged port (for restrictive firewalls)
0.91see 0.9
0.9due to a missing include-line offsets were enormous
0.8now one can select what ip address to accept for broadcasts (snts and ptp), added syncing against an (S)NTP server via a socks5 proxy
0.7implemented proper timeouts, added simple PTP handler (version 1 only currently and not the complete interaction between server and client, just receiving)
0.6now correctly sets the precision for icmp timestamp, now compiles on IRIX as well, initial clock set can now use average of multiple measurements, added synchronizing against an SNMP server
0.5added ICMP TIMESTAMP syncing ("syncing via ping requests")
0.4added initially stepping; this speeds up initial syncing and solves the problem where the initial offset is too large for ntpd
0.3added support for syncing against IRC servers
0.2more verbose output to help debugging, write measurements to file (if wanted), write pid to file if daemon, set user to run as, read-only mode, setting of fudge factor added, max. offset configurable, configurable sleep interval, time/daytime can now set port, added measurements statistics, added support for the snts protocol
0.1initial release


 HTP: syncs against an http server
 PTPd: an PTP (IEEE 1588) implementation (version 1 of the protocol)

For contact info, see this page.