Chalmers Datanätgrupp

NTP på Chalmers



Inledning

Enskilda datorers klockor kan gå fel. Det är viktigt att ställa in tiden hos datorer så att alla har samma uppfattning om tiden (för att uppnå s.k. synkronisering). I många sammanhang är exakt tidmätning viktig. T.ex. för att upptäcka eller utreda ett datorintrång kan exakt tid av anslutningar på Internet ha en stor betydelse.
Klockorna i datorer ställs in m.h.a. ett protokoll, NTP (Network Time Protocol). NTP är ett nätverksprotokoll, d.v.s. tidsynkroniseringen sker på ett nätverk eller Internet. Datorn som kör NTP avviker inte mer än några millisekunder från den korrekta tiden.
Vissa datorer i världen har en finare ur. De agerar som referens eller "källa". En maskin som använder NTP synkroniserar tiden antigen direkt med dessa eller indirekt, d.v.s. synkroniserar med en annan server med korrekt tid, (som i slutändan synkroniseras med en av dem förstaklassiga servrar).
I korthet fungerar protokollet så här: din dator (som agerar som en s.k. en klient) skickar en fråga till en annan dator (s.k. en server), som svarar med aktuell tid, och sedan kompenserar NTP programvaran för den tid det tog att skicka och ta emot svaret.

En förenklad variant av NTP är SNTP (Simple Network Time Protocol). Klienter som använder SNTP kan också använda NTP-servrar som tidkällor.

För att synkronisera tid på datorerna inom Chalmers tillhandhåller CDG tre tidsservrar som är tänkta att användas av klienter inom verksamheten:

Tidsynkronisering under Windows

Om din dator är medlem i en Windows domän, synkroniseras tiden med stor sannolikhet automatiskt. Du kan i princip sluta läsa vidare. I annat fall ska den synkroniseras med en NTP server.

XP Exempel

Under Windows XP är synkroniseringen "på" om man inte ändrat de förinställda värden. Windows XP brukar ha 2 st. förinställda servrar: "time.windows.com" och "time.nist.gov". Om du tycker att proceduren att ändra, som beskrivs nedan, är komplicerad kan du antagligen nöja dig med att använda de förkonfigurerade, åtminstone om din dator enbart är en enkel arbetsplatsdator.

  1. För att se dina inställningar kan du antigen dubbelklicka på klockan i systemets "toolbar" längst ner till höger eller navigera till Start > Control Panel och sedan double-klicka "Date and Time". När fönstret "Date and Time Proporties dyker upp, välj fliken "Internet Time".




  2. Under Internet Time tab. Se Serverlistan. De 2 förinställda servrarna time.windows.com och time.nist.gov finns där.




  3. Innan du börjar ändra

    Se till att "Automatically synchronize with an Internet Time Server" är förvalt (annars kommer inte knappen "Update Now" att synas). Testa först funktionaliteten genom att välja en av servrarna och klicka Update Now. Efter några sekunder ska du få se att tiden har synkroniserats och meddelandet "The time has been successfully synchronized" visas. Om du får ett felmeddelande, försök igen. Om problemet kvarstår se avsnittet under "Felsökning" nedan.

  4. Det är relativt enkelt att ändra/lägga till/ta bort NTP-servrar, men kräver att du gör ändringar i "Systemregistret", så ta det försiktigt. Vi vill ändra NTP-servrarna till Chalmers egna, genom att använda ett program som kallas för "regedit" (registereditor). Man kan ta bort de befintliga sevrarna helt, men här väljer jag att visa hur man behåller de gamla på 4:e resp. 5:e plats (efter våra 3 servrar).
    Klicka på Start, sedan välj Run.

    Skriv regedit i "Run dialog-boxen" och klicka sedan OK.




  5. Nu navigera till (i Registereditor) HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\DateTime\Servers key,
    genom att klicka i tur och ordning på plustecknen vid HKEY-LOCAL-MACHINE, SOFTWARE, Microsoft, ... o.s.v.
    .





    Anteckna vilka värde som finns i "Servers" för att kunna återskapa dem vid behov.
    Nu vill vi ta bort 2 "entry" (rader), raderna för "time.windows.com" och "time.nist.gov" för att skapa dem på nytt som sista servrar. Vi skapar först 3 nya Chalmers NTP-servrar (3 rader) och därefter lägger vi till de 2 gamla igen som 4:e och 5:e servrar. Det räcker med 3 servrar och du kan slippa ha 4:e och 5:e servrar speciellt när det handlar om en stationär dator på Chalmers.

    Principen är alltså: ta bort de servrar som inte behövs och lägg till dem som önskas genom att göra följande.

  6. Högerklicka på raderna för de 2 gamla servrarna och välj Delete. Kvar blir det en rad (det första entryt med ordet "Default"). När du är färdig ska raderna med "REG_SZ time.windows.com" och "REG_SZ time.nist.gov" inte längre vara kvar.




    Högerklicka sedan på Servers, gå till New och sedan String Value.



    Detta skapar ett nytt "String Value". Namnge det 0 Gör samma sak för att skapa värdena ("String Value") 1 och 2 till 4.(d.v.s. 2:a och 3:e,.. totalt 5 servrar: med början på 0 och till 4). Det går inte att ha samma värde två gånger. Om du vill ha 3 servrar enbart, ska du göra det här steget 3 gånger och skapa värdena 0, 1 och 2. '

  7. Dubbelklicka nu de nyskapade "String Value" en och en och inför nya tidsservrar. Klicka OK varje gång..




  8. Nu går det att se alla entry-raderna på plats. Kontrollera att allt är rättstavat. Avsluta regedit genom att stänga fönstret (File > Exit) eller trycka på den röda "x".

  9. För att kontrollera de nya inställningarna, gör om steg 1 och 2.




    Testa nu alla de nya servrarna (en och en) genom att välja en och klicka Update Now. Om du får ett felmeddelande, försök igen. Om problemet kvarstår kontrollera att du inte har gjort något fel.

    Se till att
    "Automatically synchronize with an Internet Time Server" är förvalt.
    Serverlistan är ifylld med följande värden (speciellt för stationära datorer på Chalmers)

      ntp1.chalmers.se
      ntp2.chalmers.se
      ntp3.chalmers.se

Felsökning:

  1. Försäkra dig att din dator är ansluten till Internet.
  2. Om tid på din dator innan synkroniseringen skiljer sig mycket från aktuell tid på Internettidsservern sker inget. Skillnaden ska inte vara mer än 15 minuter, d.v.s. en grov inställning av klockan ska göras först.
  3. Om du har en brandvägg i din dator eller en brandvägg eller en proxyserver i nätverket, kontrollera att inkommande och/eller inkommande trafik till/från port 123 (UDP) inte är blockerade.
  4. Se Windows hjälp för mer information.

Om du vill köra Windows som NTP server

Se How to configure an authoritative time server in Windows XP eller den här länken (svenska) .

I dokumentet finns referenser till följande artiklar för andra Windows plattformar:

  • 816042 Konfigurera en auktoritär tidsserver i Windows Server 2003
  • 216734 Konfigurera en auktoritär tidsserver i Windows 2000

    Exempel på konfigurationer för Unix plattformar

    Konfiguration för klientscenario

    Följande rader är ett exempel på en konfigurationsfil ”/etc/ntp.conf” för redhat Linux. (Filen kan finnas på annat ställe som t.ex. ”/etc/inet/ntp.conf”). Se det som står här framför allt bara som lite tips. Se NTP dokumentationen för mer information.

    # ntp.conf ######################################
    # Konfiguration för klient
    #

    
    #server w.x.y.z. # Namn el. IP-adressen till NTP-servern   
    server ntp1.chalmers.se
    server ntp2.chalmers.se
    server ntp3.chalmers.se
    restrict 127.0.0.1 # tillåt localhost att ändra konfigurationen
    server 127.127.1.0 # local klocka
    fudge 127.127.1.0 stratum 10
    broadcastdelay 0.008
    driftfile /var/lib/ntp/drift # redhat har det här med rätta rättigheter
    #driftfile /etc/ntp/ntp.drift
    logfile /var/log/ntpd.log
    #
    restrict default ignore # ignorera all trafik som default
    restrict ntp1.chalmers.se nomodify noquery notrap
    restrict ntp2.chalmers.se nomodify noquery notrap
    restrict ntp3.chalmers.se nomodify noquery notrap
    #
    ## Slut Konfiguration för klient ###################

    Efter ändringar ska NTP startas om. Det görs lite olika på olika plattformar.

    Följande kommando brukar fungera under redhat:
    [root ~]# service ntpd restart

    Körning av följande kommando under redhat brukar genererar en utskrift enligt nedan på skärmen. (Utskrifter kan också vara annorlunda på andra plattformar):

    [root ~]# /etc/init.d/ntpd stop; echo "Kör igång igen"; /etc/init.d/ntpd start

    Shutting down ntpd:                                        [  OK  ]   
    Kör igång igen
    ntpd: Synchronizing with time server: [ OK ]
    Starting ntpd: [ OK ]
    [root ~]#

    Om NTP körs av en annan användare än root ska drift- och logfilerna ägas av den användaren.

    Vissa implementationer av NTP (baserade på xntpd) slår upp IP-adressen för NTP-servern och använder den i fortsättningen, vilket innebär att man måste starta om servern om man byter IP-adress för någon server.


    Frågor eller problem med dessa sidor? Kontakta gärna webmaster@cdg.chalmers.se.
    Detta dokument ändrades senast 2013-01-30 klockan 18:28.

    Chalmers tekniska högskola
    Datanätgruppen