Wat is SNTP?
SNTP (Simple Network Time Protocol) is een vereenvoudigde vorm van NTP waarmee een apparaat zijn klok via een IP-netwerk gelijkzet met één tijdserver, met hetzelfde pakketformaat als NTP maar zonder de algoritmen die meerdere bronnen filteren, vergelijken en combineren. SNTPv4 werd in 2006 beschreven in RFC 4330 en is sinds 2010 als subset opgenomen in de NTPv4-specificatie RFC 5905. Omdat het protocol klein en eenvoudig is, zit het in veel embedded apparaten zoals managed switches, PLC’s, HMI’s en beveiligingsrelais.
In OT-netwerken is SNTP vaak de tijdclient op apparaten aan de rand van het netwerk: lichtgewicht, compatibel met elke NTP-server en goed genoeg voor tijdstempels op milliseconde- tot tientallen-millisecondenniveau.
🎯 Waarom is tijdsynchronisatie in OT belangrijk?
Een kwartsklok in een embedded apparaat loopt altijd een beetje uit. Een afwijking van enkele tientallen ppm is gebruikelijk en komt neer op één tot enkele seconden per dag, zodat apparaten zonder correctie binnen weken minuten uit elkaar lopen. Een gedeelde tijd is daarom de basis voor:
- Correcte tijdstempels op alarmen, logs, historische data en events in SCADA en de historian
- Incidentanalyse - de volgorde van gebeurtenissen reconstrueren bij forensisch onderzoek en incidentrespons
- Correlatie in de SIEM - meldingen uit firewalls, switches en besturingen koppelen op tijd
- Coördinatie tussen systemen - batchprocessen, datalogging en alarmmanagement met first-out-analyse
- Compliance - IEC 62443 eist in deel 3-3 (SR 2.11) betrouwbare tijdstempels op auditrecords, ISO 27001 heeft een aparte beheersmaatregel voor kloksynchronisatie (A.8.17 in de versie van 2022) en ook GxP vraagt om betrouwbare tijdstempels in audit trails
- Tijdgebonden beveiliging - certificaatgeldigheid, Kerberos in Active Directory (standaard maximaal vijf minuten klokverschil), tijdgebonden toegangsregels en log-retentie
🔧 Hoe werkt SNTP?
SNTP gebruikt dezelfde berichten als NTP via UDP-poort 123. Een pakket heeft een kop van 48 bytes met onder meer het stratum, het poll-interval en vier tijdstempels van 64 bits.
| Stap | Wat gebeurt er |
|---|---|
| 1. Verzoek | De client stuurt een pakket in mode 3 (client) en noteert het verzendmoment T1 |
| 2. Antwoord | De server antwoordt in mode 4 (server) met ontvangsttijd T2 en verzendtijd T3 |
| 3. Berekening | De client noteert ontvangstmoment T4 en berekent offset en round-trip delay uit T1-T4 |
| 4. Klok zetten | De client zet of corrigeert zijn lokale klok, vaak in één stap |
| 5. Herhalen | Na het poll-interval volgt een nieuw verzoek; RFC 4330 verbiedt intervallen korter dan 15 seconden |
De eenvoudigste SNTP-client gebruikt alleen de verzendtijd van de server en negeert de netwerkvertraging. Betere implementaties rekenen met alle vier de tijdstempels, net als NTP. Naast unicast kent SNTP ook broadcast-modus (mode 5), waarin een server periodiek de tijd naar een broadcast- of multicastadres stuurt, en manycast, waarbij een client via een broadcast- of multicastadres zelf servers zoekt.
Een server die overbelast is of de client weigert, kan een Kiss-o’-Death-pakket sturen: stratum 0 met een code als RATE, DENY of RSTR. Een nette SNTP-client stopt bij DENY of RSTR met vragen aan die server en verlaagt bij RATE zijn vraagfrequentie.
🔄 Wat is het verschil tussen SNTP, NTP en PTP?
Het verschil met NTP zit niet in het pakketformaat, maar in wat de client met de antwoorden doet. Volwaardig NTP bevraagt meerdere servers, filtert uitschieters, kiest de beste bron en stuurt de klok geleidelijk bij. SNTP vertrouwt op één server tegelijk, met hooguit een tweede als reserve.
| Protocol | Typische nauwkeurigheid | Kenmerk | Toepassing in OT |
|---|---|---|---|
| SNTP | Enkele ms tot tientallen ms op een LAN, afhankelijk van implementatie | Eén server, geen filtering, vaak tijdsprongen | Switches, eenvoudige PLC’s, HMI’s, beveiligingsrelais volgens IEC 61850 editie 1 |
| NTP | Onder 1 ms op een LAN, tientallen ms via internet | Meerdere bronnen, filtering, geleidelijk bijsturen | Servers, domeincontrollers, SCADA, historian, tijdservers |
| PTP (IEEE 1588) | Onder 1 µs met hardware-tijdstempels | Hardware-ondersteuning in switches en eindpunten | Motion control, synchrofasoren, sampled values in onderstations |
Volgens RFC 5905 is SNTP bedoeld voor twee situaties: een primaire server met één referentieklok, of een client met één bovenliggende server zonder eigen afhankelijke clients. Een SNTP-client hoort dus aan de rand van de hiërarchie te staan en mag geen tijd doorgeven aan andere apparaten. SNTP en NTP zijn volledig uitwisselbaar op het netwerk, dus een SNTP-client kan zonder aanpassing een NTP-server gebruiken.
🏭 Waar kom je SNTP tegen in de industrie?
- Managed switches - veel industriële switches hebben een SNTP-client, zodat syslog-meldingen en SNMP-traps een bruikbare tijd hebben.
- PLC’s en HMI’s - eenvoudigere besturingen en panels synchroniseren via SNTP, zodat alarmen en recepturen een kloppend tijdstempel krijgen.
- Energiesector - de eerste editie van IEC 61850 gebruikte SNTP voor tijdsynchronisatie van beveiligingsrelais (IED’s). IEC 61850-5 kent nauwkeurigheidsklassen van T1 (±1 ms, voor tijdstempels op events) tot T5 (±1 µs). Standaard SNTP haalt T1 alleen met een goede implementatie; voor de strengere klassen is de PTP-profielnorm IEC/IEEE 61850-9-3 uit 2016 ontwikkeld.
- Gebouwautomatisering en IoT - controllers, camera’s en sensoren met beperkte rekenkracht gebruiken vaak SNTP.
- Terugvaloptie - op sommige apparaten dient SNTP als reservebron wanneer de primaire PTP- of NTP-synchronisatie uitvalt.
🛠️ Hoe richt u SNTP goed in?
Een betrouwbare tijdketen in een OT-netwerk bouwt u in lagen, passend bij het Purdue Model:
- Eigen primaire bron - plaats een stratum 1-tijdserver met GNSS-ontvanger en holdover-oscillator, en houd rekening met GNSS-verstoring zoals jamming en spoofing.
- Volwaardige NTP-servers per zone - laat in elke zone of DMZ een server met volledig NTP (bijvoorbeeld chrony) de tijd doorgeven, bijvoorbeeld een SCADA-server of domeincontroller. Laat SNTP-apparaten nooit direct naar internet of naar de IT-omgeving gaan.
- SNTP-clients als bladeren - wijs eindapparaten een primaire en een reserve-NTP-server toe in hun eigen zone.
- Verkeer afschermen - sta UDP 123 in firewallregels alleen toe naar de bedoelde tijdservers en scheid het verkeer met netwerksegmentatie en VLAN’s.
- Bewaken - meld offset, stratum en synchronisatiestatus via Syslog of SNMP aan netwerkmonitoring, met een alarm bij stratum 16 of een afwijking boven bijvoorbeeld 100 ms.
- Redundantie - dubbele tijdservers horen bij redundantie van het netwerk, want een SNTP-client met één bron valt bij uitval terug op zijn eigen, uitlopende klok. Neem de configuratie van de tijdservers ook op in uw back-up.
| Instelling | Typische waarde | Toelichting |
|---|---|---|
| Poll-interval | 64 s tot enkele uren | Nooit korter dan 15 s (RFC 4330); langer bij stabiele klokken |
| Aantal servers | 1 actief + 1 reserve | SNTP combineert geen bronnen, het wisselt alleen bij uitval |
| Alarmdrempel offset | 100 ms tot 1 s | Afhankelijk van eisen aan alarm- en logvolgorde |
| Tijdzone | UTC in het apparaat | Lokale tijd alleen in de presentatielaag, vermijdt problemen bij zomertijd |
🔐 Welke beveiligingsrisico’s heeft SNTP?
Tijd is een aanvalsdoel: wie de klok verschuift, kan logs onbruikbaar maken, certificaten laten verlopen of tijdgestuurde logica verstoren. SNTP-apparaten zijn kwetsbaar omdat ze één bron vertrouwen en die bron zelden controleren. Een vervalst antwoord wordt zonder plausibiliteitscheck overgenomen.
- Spoofing en man-in-the-middle - zonder authenticatie accepteert de client elk pakket dat op een geldig antwoord lijkt.
- Broadcast-modus - in broadcast-modus kan elk apparaat in het segment zich als tijdserver voordoen.
- Geen NTS - Network Time Security (RFC 8915, 2020) beschermt NTP-verkeer met TLS-sleutels, maar de meeste embedded SNTP-clients ondersteunen dit niet.
- Jaar 2036 - de 32-bitsecondenteller van NTP-tijdstempels loopt op 7 februari 2036 over. RFC 4330 beschrijft hoe clients dat moeten opvangen, maar oudere firmware kan een verkeerde datum tonen.
IEC 62443-3-3 vraagt vanaf security level 2 om interne tijdsynchronisatie (SR 2.11 RE 1) en op het hoogste niveau om bescherming van de integriteit van de tijdbron (RE 2). Omdat SNTP die bescherming zelden biedt, compenseert u met segmentatie, vaste serveradressen en monitoring. Onder NIS2 en de Nederlandse Cyberbeveiligingswet is een betrouwbare tijdlijn bovendien nodig om binnen de meldtermijnen een incident te kunnen reconstrueren.
❓ Veelgestelde vragen
Is SNTP compatibel met een gewone NTP-server?
Ja, SNTP gebruikt hetzelfde pakketformaat en dezelfde UDP-poort 123 als NTP. Een SNTP-client kan daardoor elke NTP-server bevragen, en RFC 5905 noemt SNTP en NTP volledig uitwisselbaar binnen één netwerk.
Hoe nauwkeurig is SNTP?
SNTP haalt op een lokaal netwerk doorgaans enkele milliseconden tot tientallen milliseconden, afhankelijk van de implementatie en de netwerkbelasting. Omdat SNTP geen uitschieters filtert en vaak met tijdsprongen bijstuurt, is het minder nauwkeurig en minder stabiel dan volwaardig NTP.
Kan een SNTP-apparaat tijdserver zijn voor andere apparaten?
Volgens RFC 4330 en RFC 5905 hoort een SNTP-client geen tijd door te geven aan andere clients. Alleen een primaire server met één eigen referentieklok, zoals een GNSS-ontvanger, mag SNTP als server gebruiken; tussenliggende tijdservers moeten volledig NTP draaien.
Gebruikt SNTP dezelfde poort als NTP?
Ja, SNTP werkt net als NTP via UDP-poort 123. In firewallregels tussen OT-zones staat u die poort alleen toe van de SNTP-clients naar de aangewezen interne tijdservers.
Wanneer kiest u PTP in plaats van SNTP?
PTP is nodig wanneer apparaten op microsecondenniveau gelijk moeten lopen, zoals bij motion control, synchrofasormetingen of sampled values in digitale onderstations. Voor tijdstempels op logs, alarmen en historische data is SNTP of NTP meestal voldoende.
Is SNTP veilig genoeg voor kritieke OT-omgevingen?
SNTP heeft standaard geen authenticatie, waardoor een aanvaller met netwerktoegang de tijd kan vervalsen. In kritieke omgevingen gebruikt u SNTP daarom alleen achter goede segmentatie, met interne tijdservers en monitoring op afwijkingen, en kiest u waar mogelijk voor NTP met NTS.
📌 Samengevat
SNTP is de lichtgewicht variant van NTP voor eindapparaten: het gebruikt hetzelfde pakketformaat, maar vertrouwt op één server en laat filtering en geleidelijke bijsturing weg. Zet SNTP in op switches, PLC’s en HMI’s aan de rand van het OT-netwerk, laat ze synchroniseren met interne NTP-servers per zone, scherm het verkeer af en bewaak de offset. Waar microseconden tellen, is PTP de juiste keuze, en een betrouwbare tijd blijft een vast onderdeel van OT-convergentie.
