#!/usr/bin/perl # Script Fragt den RFC 868 Timeserver ab # und liefert die Zeit # # 20060721 Peter Baumann use IO::Socket; # Einen DaytimeServer anzapfen $hostname = "172.16.1.40"; # Serverport use constant SVPORT => 37; # Differenz zwischen 1.1.1900 (Time-Server) # und 1.1.1970 (UNIX-Epoche) use constant KORR => 2208988800; my $cur_time = &get_time; print "Die Server Zeit ist $cur_time\n"; # Zeit vom anderen Server holen sub get_time { my ($binarytime, $servertime); my $ts_sock = new IO::Socket::INET ( PeerAddr => $hostname, PeerPort => SVPORT, Proto => 'tcp') or die "can't create local socket: $@\n"; read($ts_sock,$binarytime,4); $ts_sock->close(); $servertime = unpack('N',$binarytime); $servertime = localtime($servertime - KORR); return "$servertime"; }