NTP PROTOKOL VZPOSTAVITEV NTP STREŽNIKA Agenda      Uvod Splošni pregled NTP protokola ter njegov zgodovinski razvoj Zahteve po natančnem času Različice ter opis NTP programskega paketa.

Download Report

Transcript NTP PROTOKOL VZPOSTAVITEV NTP STREŽNIKA Agenda      Uvod Splošni pregled NTP protokola ter njegov zgodovinski razvoj Zahteve po natančnem času Različice ter opis NTP programskega paketa.

NTP PROTOKOL VZPOSTAVITEV NTP STREŽNIKA

       

Agenda

Uvod Splošni pregled NTP protokola ter njegov zgodovinski razvoj Zahteve po natančnem času Različice ter opis NTP programskega paketa ter podprti operacijski sistemi Delovanje NTP protokola  DEMO  Izmenjava paketov Vzpostavitev NTP strežnika  Strojna oprema   Programska oprema Zunanji vir točnega časa Konfiguracija NTP strežnika  Osnovne predispozicije  Priprava serijskih vrat    Konfiguracijska datoteka ntp.conf

Omrežne nastavitve Objava strežnika v svetovni grozd NTP Statistika  Izpis tcpdump  Statistika napake  Statistika zahtevkov

Uvod

  

Protokol razvit v začetku osemdesetih let prejšnjega stoletja David L. Mills – oče NTP protokola V zadnjem času se pojavlja vedno večja potreba po časovni vsklajenosti sistemov

  Banke Borze   IDS ...

Splošni pregled NTP protokola ter njegov zgodovinski razvoj       NTP se razvija že dobrih 25 let Uvrščamo ga med starejše internetne protokole s tem, da za razliko od ostalih pridobiva na popularnosti in uporabnosti Trenutno smo na prelomnici med uporabo NTPv3 oziroma najnovejšega NTPv4 protokola NTP v omogoča sinhronizacijo urgostiteljev ter usmerjevalnikov v internetu V WAN omrežjih govorimo o natančnosti nekaj sto milisekund v LAN oziroma omrežjih hitrejših od 10Mb/s pa le nekaj milisekund.

NTP protokol je bil v zadnjem času preveden in pripravljen za delovanje na praktično vseh platformah

Zahteve po natančnem času

 Uporaba NTP protokola  razpršene podatkovne baze – beleženje transakcij (transaction logs)      borzne prodaje in nakupi varno podpisovanje oziroma elektronsko žigosanje kontrola zračnega prometa ter lokacijska poročila natančno izvajanje radijskih in televizijskih programov sinhronizacija multimedijskih naprav pri videokonferencah    Interaktivne simulacije nadzor omrežij – Intrusion detection sistemi zgodnji detekciji okvar na mrežni infrastrukturi

Različice, opis NTP programskega paketa ter podprti opercijski sistemi    Danes v osnovi uporabljamo dve med seboj združljivi različici in sicer NTPv3 ter NTPv4  Prednosti NTPv4  cross/platform podpora za delovanje na različnih operacijskih sistemih  implementirani varnostni sistemi Poleg klasičnega NTP sistema poznamo še S(imple)NTP, ki pa zaradi preprostejšega algoritma ponuja omejeno natančnost Podprti operacijski sistemi  NTPjev “matični” operacijski sistem je UNIX  Danes se NTP pojavlja na vseh platformah tako UNIX (Linux, FreeBSD, OpenBSD, Solaris ...) kot tudi na Microsoftovih odjemalcih in strežnikih  Večji “odjemalci točnega časa” (banke, borze ...) pa se poslužujejo integriranih rešitev, ki združujejo NTP strežnik ter referenčno uro.

Delovanje NTP protokola

 Hierarhija NTP strežnikov  Strežniki se po natančnosti razvrščajo v hierarhijo     Stratum-0 – referenčne ure (atomske ure, GPS sateliti z atomskimi urami ...) Stratum-1 – najnatančnejši zemeljski NTP strežnik (sinhronizira se z referenčnimi urami) – navadno se nanje ne priključujejo končni uporabniki temveč ponudniki internetnih storitev, ki nato čas posredujejo dalje Stratum-2 – NTP strežnik (navadno takšne strežnike posedujejo ponudniki internetnih storitev), ki kot referenco uporablja več Stratum-1 NTP strežnikov.

Stratum-3 – NTP strežnik nižje natančnosti ali končni odjemalec

Hierarhija NTP strežnikov

Delovanje NTP protokola

Integrirana redundanca

 NTP odjemalec ali nižji strežnik lahko kot vir točnega časa uporablja več referenčnih NTP strežnikov  V osnovi teži k sinhronizaciji s tistim, ki ima najnižji stratum nivo ter najmanjšo zakasnitev  V primeru odpovedi NTP odjemalec izbere naslednji strežnik, ki ustreza kriterijem

Delovanje NTP protokola

Izračunavanje natančnosti

Odstopanje

 

T

2 

T

1  

T

3 

T

4  2

Zamik

 

T

4 

T

1  

T

3 

T

2 

DEMO

Izmenjava paketov NTP

Vzpostavitev NTP strežnika

 Strojna oprema  V osnovi se potrebuje x86 (64 bitna tehnologija še ni dokončno podprta na področju NTP) kompaktibilen strežnik  V primeru ntp.mostovna.com se uporablja Compaq Deskpro Celeron 400Mhz s 128 MB spomina  Nekateri strokovnjaki celo svetujejo starejše računalnike zaradi natančnejše notranje “lokalne” ure  Programska oprema  NTP strežnik lahko teče na poljubnem linux operacijskem sistemu (MS Windows platformo se za Stratum 1 strežnike odsvetuje zaradi zakasnitev pri procesiranju).

 V primeru ntp.mostovna.com smo izbrali Debian Linux operacijski sistem ter NTPv4 programski paket  Zunanji vir točnega časa  Tukaj imamo nekaj izbire na (tujem) tržišču  V primeru ntp.mostovna.com smo se odločili za preverjeno rešitev (uporabljajo jo na IJS) in sicer paket Accutime 2000 Synchronization kit ameriškega podjetja Trimble  Paket je sestavljen iz modula za pretvorbo oziroma komunikacijo med anteno ter računalnikom (serijski prenos ter paralelni prenos)   Multicord kabla za povezavo med anteno in modulom Antenske kupole

Vzpostavitev NTP strežnika

Vzpostavitev NTP strežnika

Konfiguracija NTP strežnika

  Osnovne predispozicije  Antena mora imeti čim večji “vidni” kot  Sprejemnik ntp.mostovna.com sočasno vidi med 8 10 satelitov preko katerih dobiva točen čas Nastavitev serijskih vrat  Kreirati moramo virtualno povezavo na naša serijska vrata za gonilnik Palisade (najpogosteje uporabljen) uporabimo sledečo sintakso:  ln –s /dev/ttyS0 /dev/palisade0  Za hitro preverjanje ali z zunanjega referenčnega sprejemnika sprejemamo uporabimo ukaz:  hexdump -C /dev/palisade0

Konfiguracija NTP strežnika

 Nastavitev konfiguracijske datoteke ntp.conf

 Z urejevalnikom besedila npr. joe ali nano popravljamo nastavitve zapisane v datoteki ntp.conf – datoteka se nahaja v imeniku /etc  joe /etc/ntp.conf

Omrežne nastavitve

 Če želimo objaviti NTP strežnik skozi požarni zid moramo odpreti TCP in UDP vrata 123, ki so rezervirana za NTP protokol

Konfiguracija NTP strežnika

  Svetovni grozd NTP strežnikov ali pool.ntp.org v osnovi združuje vse javno dostopne NTP strežnike Za zelo enostaven in učinkovit load balancing pa se uporablja preprost DNS trik in sicer round-robin  si.pool.ntp.org združuje vse slovenske javne NTP strežnike  da odjemalci nebi vedno obremenjevali samo enega strežnika se poslužujemo DNS round-robin funkcije ki definira, da se za A DNS zapisom si.pool.ntp.org skriva več IP naslovov javnodostopnih NTP strežnikov tako, vsak odjemalec čisto naključno izbere enega od strežnikov

DEMO

Konfiguracijska datoteka ntp.conf

Kako deluje pool.ntp.org?

Statistika

 Izpis tcpdump – ododje za “omrežno prisluškovanje” 16:14:42.511465 IP 194.251.60.131.ntp > 10.0.1.3.ntp: NTPv3 sym_act, strat 0, poll 4, prec -6 16:14:42.511555 IP 10.0.1.3.ntp > 194.251.60.131.ntp: NTPv3 sym_pas, strat 1, poll 4, prec -19 16:14:42.525907 IP ip5993425f.bp-1031.rubicom.hu.36799 > 10.0.1.3.ntp: NTPv4 client, strat 0, poll 0, prec 0 16:14:42.526040 IP 10.0.1.3.ntp > ip5993425f.bp-1031.rubicom.hu.36799: NTPv4 server, strat 1, poll 0, prec -19 16:14:42.536274 IP 177.235.176.60.broad.hz.zj.dynamic.cndata.com.4223 > 10.0.1.3.ntp: NTPv3 client, strat 0, poll 8 16:14:42.536367 IP 10.0.1.3.ntp > 177.235.176.60.broad.hz.zj.dynamic.cndata.com.4223: NTPv3 server, strat 1, poll 8 16:14:42.543912 IP d219109.upc-d.chello.nl.3801 > 10.0.1.3.ntp: NTPv3 client, strat 0, poll 8, prec 0 16:14:42.543998 IP 10.0.1.3.ntp > d219109.upc-d.chello.nl.3801: NTPv3 server, strat 1, poll 8, prec -19 16:14:42.792129 IP cpe-24-58-150-16.twcny.res.rr.com.ntp > 10.0.1.3.ntp: NTPv4 client, strat 2, poll 10, prec -19 16:14:42.792383 IP 10.0.1.3.ntp > cpe-24-58-150-16.twcny.res.rr.com.ntp: NTPv4 server, strat 1, poll 10, prec -19 16:14:42.792485 IP p508A6A3E.dip.t-dialin.net.4229 > 10.0.1.3.ntp: NTPv3 client, strat 0, poll 8, prec 0 16:14:42.792578 IP 10.0.1.3.ntp > p508A6A3E.dip.t-dialin.net.4229: NTPv3 server, strat 1, poll 8, prec -19 16:14:42.820248 IP host81-138-0-88.in-addr.btopenworld.com.4195 > 10.0.1.3.ntp: NTPv3 client, strat 0, poll 8, prec 0

Statistika

Slika 4: Grafični prikaz napake skozi čas Slika 5: Dnevni graf – kaže aktivnost zadnjih 24 ur

Statistika

Slika 7: Mesečni graf – kaže aktivnost v zadnjem mesecu Slika 8: Letni graf – kaže aktivnost v zadnjem letu

DEMO

tcpdump