1.1. Общие сведения о NTP, SNTP и летнем времени
NTP (Network Time Protocol) — протокол сетевого времени, используемый с целью синхронизации времени среди распределенных серверов и клиентов. Благодаря используемым алгоритмам способен достичь точности до 10мс. События, состояния, функции передачи и действия определены в RFC-1305. Время на коммутаторе может быть синхронизировано с внешним сервером, также коммутатор может выполнять роль эталона времени в качестве NTP сервера.
SNTP (Simple Network Time Protocol) — простой протокол сетевого времени. Используется в системах и устройствах, не требующих высокой точности. SNTP протокол является упрощением NTP протокола, поэтому SNTP клиент может обращаться к любому NTP серверу, как к серверу SNTP.
Летнее и зимнее время — смещение времени на 1 час вперед весной и на 1 час назад осенью для экономии энергии. В настоящее время большая часть стран мира используют переход на летнее время и обратно.
1.2. Конфигурация NTP, SNTP и летнего времени
- Включить и настроить NTP клиент;
- включить NTP клиент;
- настроить NTP клиент;
- просмотр информации и отладка;
- Включить и настроить SNTP клиент;
- Включить и настроить переход на летнее время.
- Включить и настроить NTP клиент:
- включить NTP клиент:
Команда |
Описание |
---|---|
ntp enable ntp disable ! В режиме глобальной конфигурации |
Включить функцию NTP. Выключить функцию NTP. |
b. настроить NTP клиент:
Команда |
Описание |
---|---|
ntp server {<ip-address> | <ipv6-address>} [version <version_no>] [key <key-id>] no ntp server {<ip-address> | <ipv6-address>} ! В режиме глобальной конфигурации |
Задать IP адрес и ключ сервера, команда no удаляет эту конфигурацию. |
ntp broadcast server count <number> no ntp broadcast server count ! В режиме глобальной конфигурации |
Задать максимальное количество broadcast и multicast NTP серверов, поддерживаемых клиентом. Команда no возвращает значение по-умолчанию — 50. |
clock timezone WORD {add | subtract} <0-23> [<0-59>] no clock timezone WORD ! В режиме глобальной конфигурации |
Задать смещение часового пояса относительно UTC. subtract — отрицательное смещение, add — положительное смещение. Команда no удаляет настроенное смешение. |
ntp access-group server <acl> no ntp access-group server < acl> ! В режиме глобальной конфигурации |
Установить фильтрацию по ACL, когда коммутатор работает в режиме NTP-сервера. Команда no отменяет эту конфигурацию. |
ntp authenticate no ntp authenticate ! В режиме глобальной конфигурации |
Включить функцию аутентификации NTP. Команда no отключает эту функцию. |
ntp authentication-key <key-id> md5 <value> no ntp authentication-key <key-id> ! В режиме глобальной конфигурации |
Задать ключ для аутентификации NTP. Команда no удаляет сконфигурированный ключ. |
ntp trusted-key <key-id> no ntp trusted-key <key-id> ! В режиме глобальной конфигурации |
Задать идентификатор безопасного ключа. Команда no удаляет сконфигурированный идентификатор.. |
ntp multicast client no ntp multicast client ! В режиме конфигурации интерфейса VLAN |
Настроить интерфейс для приема multicast NTP пакетов. Команда no отменяет эту конфигурацию. |
ntp ipv6 multicast client no ntp ipv6 multicast client ! В режиме конфигурации интерфейса VLAN |
Настроить интерфейс для приема IPv6 multicast NTP пакетов. Команда no отменяет эту конфигурацию. |
ntp disable no ntp disable ! В режиме конфигурации интерфейса VLAN |
Отключить функцию NTP во VLAN. Команда no включает функцию NTP во VLAN (по-умолчанию). |
c. просмотр информации и отладка:
Команда |
Описание |
---|---|
show ntp status ! В привилегированном режиме |
Отобразить информацию о статусе и конфигурации NTP. |
show ntp session [ <ip-address> | <ipv6-address> ] ! В привилегированном режиме |
Отобразить информацию о сессиях NTP. |
debug ntp authentication no debug ntp authentication ! В привилегированном режиме |
Выводить отладочную информацию о аутентификации NTP. Команда no отменяет вывод отладочной информации. |
debug ntp packets [send | receive] no debug ntp packets [send | receive] ! В привилегированном режиме |
Выводить отладочную информацию о локальных настройках времени. Команда no отменяет вывод отладочной информации. |
debug ntp adjust no debug ntp adjust ! В привилегированном режиме |
Выводить отладочную информацию о событиях NTP. Команда no отменяет вывод отладочной информации. |
debug ntp sync no debug ntp sync ! В привилегированном режиме |
Выводить отладочную информацию о синхронизации времени. Команда no отменяет вывод отладочной информации. |
debug ntp events no debug ntp events ! В привилегированном режиме |
Выводить отладочную информацию о событиях NTP. Команда no отменяет вывод отладочной информации. |
2.Настроить SNTP клиент:
a. Настроить SNTP клиент:
Команда |
Описание |
---|---|
sntp server {<ip-address> | <ipv6-address>} [source {vlan | loopback }] [version ] no sntp server {<ip-address> | <ipv6-address>} [source {vlan | loopback }] [version]= ! В режиме глобальной конфигурации |
Включить функцию SNTP клиента и задать адрес сервера {<ip-address> | <ipv6-address>}, а также источника SNTP пакетов [source {vlan | loopback } и версию клиента. Команда no удаляет сконфигурированный SNTP сервер. |
sntp polltime <interval> no sntp polltime ! В режиме глобальной конфигурации |
Задать интервал синхронизации SNTP в секундах. Команда no возвращает значение по-умолчанию — 64 секунды. |
clock timezone WORD {add | subtract} <0-23> [<0-59>] no clock timezone WORD ! В режиме глобальной конфигурации |
Задать смещение часового пояса относительно UTC. subtract — отрицательное смещение, add — положительное смещение. Команда no удаляет настроенное смешение. |
b. Просмотр информации и отладка:
Команда |
Описание |
---|---|
show sntp ! В привилегированном режиме |
Отобразить информацию о конфигурации и синхронизации SNTP. |
debug sntp no debug sntp ! В привилегированном режиме |
Выводить отладочную информацию о SNTP. Команда no прекращает вывод отладочной информации |
c. Включить и настроить переход на летнее время:
Команда |
Описание |
---|---|
clock summer-time <word> absolute <HH:MM> <YYYY.MM.DD> <HH:MM> <YYYY.MM.DD> [<offset>] no clock summer-time ! В режиме глобальной конфигурации |
Задать абсолютное время начала и окончания летнего времени, а также его смещение <offset> Команда no удаляет эту конфигурацию. |
clock summer-time <word> recurring <HH:MM> {<week> <day> <month>|<MM.DD>} <HH:MM> {<week> <day> <month>|<MM.DD>} [<offset>] no clock summer-time ! В режиме глобальной конфигурации |
Задать повторяющееся время начала и окончания летнего времени, а также его смещение <offset> Команда no удаляет эту конфигурацию. |
1.3. Пример конфигурации NTP, SNTP и летнего времени
1.3.1. NTP и SNTP
Рисунок 67.1 — Синхронизация времени
В сети расположены 2 сервера времени: один находится в активном режиме и используется, другой находится в режиме ожидания. На коммутаторе “Switch A” требуется синхронизировать локальное время.
Конфигурация коммутатора будет выглядеть следующим образом:
Switch(config)#ntp enable Switch(config)#interface vlan 1 Switch(Config-if-Vlan1)#ip address 192.168.1.12 255.255.255.0 Switch(config)#interface vlan 2 Switch(Config-if-Vlan1)#ip address 192.168.2.12 255.255.255.0 Switch(config)#ntp server 192.168.1.11 Switch(config)#ntp server 192.168.2.11
Вместо NTP на коммутаторе аналогично может быть настроен STP:
Switch(config)#sntp server 192.168.1.11 Switch(config)#sntp server 192.168.2.11
1.3.2. Летнее время
Пример 1.
Переход на летнее время однократно осуществляется 1го апреля 2019 года в 23:00, переход на зимнее время однократно осуществляется 1го октября 2019 года в 00:00. Смещение времени — 1 час.
Конфигурация коммутатор будет выглядеть следующим образом:
Switch(config)# clock summer-time 2019 absolute 23:00 2019.4.1 00:00 2019.10.1
Пример 2.
Переход на летнее время каждый год осуществляется в первую субботу апреля в 23:00, переход на зимнее время каждый год осуществляется в последнее воскресенье октября в 00:00. Смещение времени — 2 часа.
Switch(config)#clock summer-time time_travel recurring 23:00 first sat apr 00:00 last sun oct 120
Simple Network Time Protocol
Simple Network Time Protocol (SNTP) is a simplified version of Network Time Protocol(NTP). This module describes how to configure
Simple Network Time Protocol on Cisco devices.
Restrictions for Simple Network Time Protocol
-
Simple Network Time Protocol (SNTP) and Network Time Protocol (NTP) cannot coexist on the same machine as they use the same
port. This means that these two services cannot be configured on the system at the same time. -
Support for IPv6 addresses is available only if the image supports IPv6 addressing.
Information About Simple Network Time Protocol
Simple Network Time Protocol
Simple Network Time Protocol (SNTP) is a simplified, client-only version of NTP. SNTP can receive only the time from NTP
servers; it cannot be used to provide time services to other systems.
SNTP typically provides time within 100 milliseconds of the accurate time, but it does not provide the complex filtering
and statistical mechanisms of NTP. In addition, SNTP does not authenticate traffic, although you can configure extended access
lists to provide some protection. An SNTP client is more vulnerable to servers that have unexpected behavior than an NTP client,
and should be used only in situations where strong authentication is not required.
You can configure SNTP to request and accept packets from configured servers or to accept NTP broadcast packets from any
source. When multiple sources are sending NTP packets, the server with the best stratum is selected. (See the
Network Time Protocol section on page 3 for a description of strata.) If multiple servers are at the same stratum, a configured server is preferred
over a broadcast server. If multiple servers pass both tests, the first one to send a time packet is selected. SNTP will choose
a new server only if it stops receiving packets from the currently selected server, or if a better server (according to the
criteria described) is discovered.
How to Configure Simple Network Time Protocol
Configuring Simple Network Time Protocol (SNTP) Authentication
Simple Network Time Protocol (SNTP) is a simplified version of Network Time Protocol (SNTP). This module describes how to
configure SNTP on Cisco devices.
SUMMARY STEPS
- enable
- configure terminal
- sntp authenticate
-
sntp
authentication-key
number
md5
key - sntp trusted-key
key-number [—
end-key] - sntp server
ip-address
key
key-id - end
DETAILED STEPS
Command or Action | Purpose | |
---|---|---|
Step 1 |
enable Example:
|
Enables privileged EXEC mode.
|
Step 2 |
configure terminal Example:
|
Enters global configuration mode. |
Step 3 |
sntp authenticate Example:
|
Enables the SNTP Authentication feature. |
Step 4 |
Example:
|
Defines authentication keys.
|
Step 5 |
sntp trusted-key Example:
|
Defines trusted authentication keys.
|
Step 6 |
sntp server Example:
|
Allows the software clock to be synchronized by an SNTP time server. |
Step 7 |
end Example:
|
Exits global configuration mode and returns to privileged EXEC mode. |
Verifying and Troubleshooting Simple Network Time Protocol
To verify and troubleshoot Simple Network Time Protocol configuration, use the following commands.
SUMMARY STEPS
- enable
- debug sntp packets [detail]
- debug sntp select
- show sntp
DETAILED STEPS
Step 1 |
enable Example:
Enables privileged EXEC mode.
|
Step 2 |
debug sntp packets [detail] Example:
Displays the NTP packet sent and received along with the SNTP packet fields. |
Step 3 |
debug sntp select Example:
Displays the SNTP server selection for IPv4 and IPv6 servers. |
Step 4 |
show sntp Example:
Displays information about SNTP available in Cisco devices. |
Configuration Examples for Simple Network Time Protocol
Example: Configuring Simple Network Time Protocol
clock timezone PST -8
clock summer-time PDT recurring
sntp update-calendar
sntp server 192.168.13.57
sntp server 192.168.11.58
interface Ethernet 0/0
sntp broadcast
Additional References for Simple Network Time Protocol
Related Documents
Related Topic |
Document Title |
---|---|
Basic System Management commands |
Basic System Management Command Reference |
NTP4 in IPv6 |
Cisco IOS Basic System Management Guide |
IP extended access lists |
Cisco IOS IP Addressing Configuration Guide |
IPX extended access lists |
Novell IPX Configuration Guide |
NTP package vulnerability |
Network Time Protocol Package Remote Message Loop Denial of Service Vulnerability |
Cisco IOS and NX-OS software releases |
White Paper: Cisco IOS and NX-OS Software Reference Guide |
Standards and RFCs
Standard/RFCs |
Title |
---|---|
RFC 1305 |
Network Time Protocol (Version 3) Specification, Implementation and Analysis |
Technical Assistance
Description |
Link |
---|---|
The Cisco Support and Documentation website provides online resources to download documentation, software, and tools. Use |
http://www.cisco.com/cisco/web/support/index.html |
Feature Information for the SNTP
The following table provides release information about the feature or features described in this module. This table lists
only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise,
subsequent releases of that software release train also support that feature.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco
Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.
Feature Name |
Releases |
Feature Information |
---|---|---|
Simple Network Time Protocol |
Simple Network Time Protocol (SNTP) is a simplified version of Network Time Protocol(NTP). This module describes how to configure The following commands were introduced or modified: sntp server, sntp authenticate, sntp authentication-key, sntp multicast, sntp trusted-key . |
Applies to RouterOS: v3, v4
Clock and Time zone configuration
RouterOS uses data from the tz database, Most of the time zones from this database are included, and have the same names.
Because local time on the router is used mostly for timestamping and time-dependant configuration, and not for historical date calculations, time zone information about past years is not included. Currently only information starting from 2005 is included.
Following settings are available in the /system clock console path, and in the «Time» tab of the «System > Clock» WinBox window:
- time (HH:MM:SS, where HH — hour 00..24, MM — minutes 00..59, SS — seconds 00..59)
- date (mmm/DD/YYYY, where mmm — month, one of jan, feb, mar, apr, may, jun, jul, aug, sep, oct, nov, dec, DD — date, 00..31, YYYY — year, 1970..2037) : date and time show current local time on the router. These values can be adjusted using the set command. Local time cannot, however, be exported, and is not stored with the rest of the configuration.
- time-zone-name (manual, or name of time zone; default value: manual) : Name of time zone. Like most of the text values in RouterOS, this value is case sensitive. Special value manual applies manually configured GMT offset, which by default is 00:00 with no daylight saving time.
- time-zone-autodetect (yes or no; default: yes) : This is new feature, starting from 6.27. If enabled, time zone will be set automaticaly.
Note: Time-zone-autodetect by default is enabled on new RouterOS installation and after configuration reset. The time zone is detected depending on routers public IP address and our Cloud servers database. Since RouterOS v6.43 your device will use cloud2.mikrotik.com to communicate with the MikroTik’s Cloud server. Older versions will use cloud.mikrotik.com to communicate with the MikroTik’s Cloud server.
Startup date and time is jan/02/1970 00:00:00 [+|-]gmt-offset. If router has a battery (for example RB230), then BIOS stored time is used as a startup time.
Active time zone information
- dst-active (yes or no>; read-only property) : This property has value yes while daylight saving time of the current time zone is active.
- gmt-offset ([+|—]HH:MM — offset in hours and minutes; read-only property) : This is the current value of GMT offset used by the system, after applying base time zone offset and active daylight saving time offset.
Manual time zone configuration
These settings are available in /system clock manual console path, and in the «Manual Time Zone» tab of the «System > Clock» WinBox window.
These settings have effect only when time-zone-name=manual. It is only possible to manually configure single daylight saving time period.
- time-zone, dst-delta ([+|—]HH:MM — time offset in hours and minutes, leading plus sign is optional; default value: +00:00) : While DST is not active use GMT offset time-zone. While DST is active use GMT offset time-zone + dst-delta.
- dst-start, dst-end (mmm/DD/YYYY HH:MM:SS — date and time, either date or time can be ommited in the set command; default value: jan/01/1970 00:00:00) : Local time when DST starts and ends.
Time update from cloud service
Starting from 6.14, there is a new feature to set time automatically from the MikroTik cloud service, called Cloud time update. See IP/Cloud manual.
SNTP client
SNTP client is included in the system package. RouterOS implements SNTP protocol defined in RFC4330. Manycast mode is not supported. NTP server and a NTP client is included in the separate ntp package, that is not installed by default.
Client configuration is located in the /system ntp client console path, and the «System > NTP Client» WinBox window. This configuration is shared by the SNTP client implementation in the system package and the NTP client implementation in the ntp package. When ntp package is installed and enabled, the SNTP client is disabled automatically.
Property | Desciption |
---|---|
enabled (yes, no default: no) | enable SNTP client for time sychronisation |
mode (broadcast,unciast , filed is read-only) | Mode that SNTP client will operate in. If no NTP servers are configured broadcast’ mode will be used. If there is dynamic or static NTP server ip address or FQDN used it will automatically switch to unciast mode» |
primary-ntp (IP address default: 0.0.0.0) | IP address of NTP server that has to be used for time synchronisation. If both values are non-zero, then SNTP client will alternate between the two server addresses, switching to the other when request to the current server times out or when the «KoD» packet is received, indicating that server is not willing to respond to requests from this client. |
secondary-ntp (IP address default: 0.0.0.0) | see primary-ntp |
server-dns-names (Comma separated domain name list default: ) | To set NTP server using its domain name. Domain name will be resolved each time NTP request is sent. Router has to have /ip dns configured. |
Status
- active-server (IP address; read-only property) : Currently selected NTP server address. This value is equal to primary-ntp or secondary-ntp.
- poll-interval (Time interval; read-only property) : Current iterval between requests sent to the active server. Initial value is 16 seconds, and it is increased by doubling to 15 minutes.
Last received packet information
Values of the following properties are reset when the SNTP client is stopped or restarted, either because of a configuration change, or because of a network error.
- last-update-from (IP address; read-only property) : Source IP address of the last received NTP server packed that was successfully processed.
- last-update-before (Time interval; read-only property) : Time since the last successfully received server message.
- last-adjustment (Time interval; read-only property) : Amount of clock adjustment that was calculated from the last successfully received NTP server message.
- last-bad-packet-from (IP address; read-only property) : Source IP address of last received SNTP packed that was not successfully processed. Reason of the failure and time since this packet was received is available in the next two properties.
- last-bad-packet-before (Time interval; read-only property) : Time since the last receive failure.
- last-bad-packet-reason (Text; read-only property) : Text that describes reason of the last receive failure. Possible values are:
- bad-packet-length — Packet length is not in the acceptable range.
- server-not-synchronized — Leap Indicator field is set to «alarm condition» value, which means that clock on the server has not been synchronized yet.
- zero-transmit-timestamp — Transmit Timestamp field value is 0.
- bad-mode — Value of the Mode field is neither ‘server’ nor ‘broadcast’.
- kod-ABCD — Received «KoD» (Kiss-o’-Death) response. ABCD is the short «kiss code» text from the Reference Identifier field.
- broadcast — Received proadcast message, but mode=unicast.
- non-broadcast — Received packed was server reply, but mode=broadcast.
- server-ip-mismatch — Received response from address that is not active-server.
- originate-timestamp-mismatch — Originate Timestamp field in the server response message is not the same as the one included in the last request.
- roundtrip-too-long — request/response roundtrip exceeded 1 second.
Log messages
SNTP client can produce the following log messages. See article «log» on how to set up logging and how to inspect logs.
- ntp,debug gradually adjust by OFFS
- ntp,debug instantly adjust by OFFS
- ntp,debug Wait for N seconds before sending next message
- ntp,debug Wait for N seconds before restarting
- ntp,debug,packet packet receive error, restarting
- ntp,debug,packet received PKT
- ntp,debug,packet ignoring received PKT
- ntp,debug,packet error sending to IP, restarting
- ntp,debug,packet sending to IP PKT
Explanation of log message fields
- OFFS — difference of two NTP timestamp values, in hexadecimal.
- PKT — dump of NTP packet. If packet is shorter than the minimum 48 bytes, it is dumped as a hexadecimal string. Otherwise, packet is dumped as a list of field names and values, one per log line. Names of fields follow RFC4330.
- IP — remote IP address.
NOTE: the above logging rules work only with the built-in SNTP client, the separate NTP package doesn’t have any logging facilities.
NTP client and server
To use NTP client and server, ntp package must be installed and enabled.
Client settings
Client configuration is located in /system ntp client.
- enabled (yes or no; default value: no)
- mode (One of broadcast, unicast, multicast or manycast.)
- primary-ntp, secondary-ntp (IP address)
Server settings
Server configuration is located in /system ntp server.
- enabled (yes or no; default value: no) — enable NTP server
- broadcast (yes or no; default value: no) — enable certain NTP server mode, for this mode to work you have to set up broadcast-addresses field
- multicast (yes or no; default value: no) — enable certain NTP server mode
- manycast (yes or no; default value: no) — enable certain NTP server mode
- broadcast-addresses (IP address; default value: ) — set broadcast address to use for NTP server broadcast mode
Example:
Set up NTP server for local network that is 192.168.88.0/24
/system ntp server set broadcast=yes broadcast-addresses=192.168.88.255 enabled=yes manycast=no
Что даст настройка SNTP на MikroTik для локальной сети
Стоит ли вообще поднимать такой вопрос как время на устройствах локальной сети. Самый ближний родственник обязательного применения этой настройки это Active Directory от Windows. Хотя даже Chrome и антивирус перестанут функционировать, если после запроса времени на устройстве в ответе будет значение 01.01.2011. Для системного администратора этот процесс можно автоматизировать посредством оборудования настройки NTP на роутере MikroTik.
Нужно настроить SNTP клиент (сервер времени) в MikroTik?
Мы поможем настроить: маршрутизатор(роутер), точку доступа или коммутатор.
Как настроить SNTP client, синхронизация времени в MikroTik
Это настройка обеспечит синхронизацию времени на роутере MikroTik. Как SNTP клиент MikroTik будет подключиться к NTP серверу. Стабильную работу на протяжении многих лет демонстрируют NTP сервера с сайта https://www.ntppool.org
Настройка находится System→SNTP Client
/system ntp client set enabled=yes primary-ntp=31.28.161.68 secondary-ntp=79.142.192.4
Установка сервера времени на роутере MikroTik
Базовый пакет прошивки не содержит опцию NTP сервера. К примеру так выглядит типичная прошивка роутера MikroTik
Настройка находится System→Packages
Базовый набор пакетов пришивки
И для установки сервера времени на роутере MikroTik, необходимо скачать и установить пакет NTP в соответствии с текущим видом CPU.
Скачать пакет NTP
Далее нужно скопировать пакет во внутреннюю память MikroTik
Настройка находится Files→File
Cкопировать NTP
И перезагрузить роутер MikroTik. На этапе загрузки в RoutesOS будет установлен пакет NTP и сервер времени в MikroTik будет иметь вид
Представление сервера времени NTP
NTP client преобразится и его обновленная форма будет также содержать сервера NTP, с которыми роутер MikroTik будет синхронизироваться.
Настройка находится System→NTP client
Новый вид NTP client
Следующим этапом необходимо активировать сервер времени(NTP), в роли которого будет выступать сам роутер MikroTik.
Настройка находится System→NTP server
Включить NTP сервер в MikroTik
На завершающем этапе настроек нужно распространить NTP сервер через настройки DHCP сервера.
Настройка находится IP→DHCP Server→Networks
Распространить NTP сервер в локальной сети
Есть вопросы или предложения по настройке SNTP клиента в MikroTik? Активно предлагай свой вариант настройки! Оставить комментарий →
Название: |
Simple Network Time Protocol |
---|---|
Уровень (по модели OSI): |
Прикладной |
Семейство: |
TCP/IP |
Порт/ID: |
123/UDP |
Назначение протокола: |
Синхронизация времени |
Спецификация: |
RFC 4330 |
SNTP (англ. Simple Network Time Protocol) — протокол синхронизации времени по компьютерной сети. Является упрощённой реализацией протокола NTP. Используется во встраиваемых системах и устройствах, не требующих высокой точности, а также в пользовательских программах точного времени.
Формат времени
В протоколе SNTP используется одинаковый с протоколом NTP формат представления времени — 64-битное число, состоящее из 32-битного счётчика секунд и 32-битного счётчика долей секунд. Нулевое значение счётчика времени соответствует нулю часов 1 января 1900 г., 6 ч 28 м 16 с 7 февраля 2036 г. и т. д. Для успешного функционирования протокола необходимо, чтобы клиент знал своё время в пределах ±34 года относительно времени сервера.
Формат сообщения
Октет | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0—3 | ИК | НВ | Режим | Страта | Интервал опроса | Точность | ||||||||||||||||||||||||||
4—7 | Задержка | |||||||||||||||||||||||||||||||
8—11 | Дисперсия | |||||||||||||||||||||||||||||||
12—15 | Идентификатор источника | |||||||||||||||||||||||||||||||
16—19 | Время обновления | |||||||||||||||||||||||||||||||
20—23 | ||||||||||||||||||||||||||||||||
24—27 | Начальное время | |||||||||||||||||||||||||||||||
28—31 | ||||||||||||||||||||||||||||||||
32—35 | Время приёма | |||||||||||||||||||||||||||||||
36—39 | ||||||||||||||||||||||||||||||||
40—43 | Время отправки | |||||||||||||||||||||||||||||||
44—47 | ||||||||||||||||||||||||||||||||
48—51 | Ключ идентификации | |||||||||||||||||||||||||||||||
52—55 | Дайджест сообщения | |||||||||||||||||||||||||||||||
56—59 | ||||||||||||||||||||||||||||||||
60—63 | ||||||||||||||||||||||||||||||||
64—67 |
- Индикатор коррекции (ИК) показывает предупреждение о будущей вставке или удалении секунды в последней минуте суток:
ИК | Значение |
---|---|
0 | Нет коррекции |
1 | Последняя минута будет иметь 61 секунду |
2 | Последняя минута будет иметь 59 секунд |
3 | Время не синхронизированно |
- Номер версии (НВ) — текущее значение 4.
- Режим:
Режим | Значение |
---|---|
0 | Зарезервирован |
1 | Симметричный активный |
2 | Симметричный пассивный |
3 | Клиент |
4 | Сервер |
5 | Широковещательный |
6 | Зарезервирован для управляющих сообщений NTP |
7 | Зарезервирован для частного использования |
- Страта — поле определено только для сообщений сервера:
Страта | Значение |
---|---|
0 | Поцелуй смерти (сервер не должен использоваться) |
1 | Первичная синхронизация |
2-15 | Вторичная синхронизация |
16-255 | Зарезервированно |
- Интервал опроса — беззнаковое целое, двоичная экспонента которого показывает максимальный интервал между последовательными сообщениями в секундах. Определено только для сообщений сервера, допустимые значения от 4 (16 с) до 17 (около 36 ч).
- Точность — знаковое целое, двоичная экспонента которого показывает точность системных часов. Определено только для сообщений сервера, типичные значения от −6 до −20.
- Задержка — знаковое число с фиксированной запятой, находящейся между 15 и 16 знаками, показывающее полное время распространения сигнала туда и обратно до источника синхронизации сервера времени. Определено только для сообщений сервера.
- Дисперсия — беззнаковое число с фиксированной запятой, находящейся между 15 и 16 знаками, показывающее максимальную ошибку из-за нестабильности часов. Определено только для сообщений сервера.
- Идентификатор источника — источник синхронизации сервера, строка для страты 0 и 1, IP-адрес для вторичных серверов. Определено только для сообщений сервера.
- Время обновления — время, когда системные часы последний раз были установлены или скорректированны.
- Начальное время, время приёма, время отправки определены ниже.
- Ключ идентификации, дайджест сообщения — необязательные поля, используемые для аутентификации.
Работа клиента
Клиент SNTP может работать в одноадресном, широковещательном и многоадресном режимах. В одноадресном режиме клиент посылает запрос (режим 3) и ждёт ответ (режим 4) от сервера. В широковещательном режиме клиент не посылает запросы, а ожидает сообщения (режим 5) от одного или нескольких серверов. В многоадресном режиме клиент посылает запрос (режим 3) по широковещательному адресу и ждёт ответ (режим 4) от одного или нескольких серверов. Первый ответивший сервер используется для последующих одноадресных запросов, остальные ответы игнорируются.
Поле | Одно- многоадресный | Широковещательный | |
---|---|---|---|
Запрос | Ответ | ||
Индикатор коррекции | 0 | 0—3 | 0—3 |
Номер версии | 1—4 | из запроса | 1—4 |
Режим | 3 | 4 | 5 |
Страта | 0 | 0—15 | 0—15 |
Интервал опроса | 0 | игнорируется | игнорируется |
Точность | 0 | игнорируется | игнорируется |
Задержка | 0 | игнорируется | игнорируется |
Дисперсия | 0 | игнорируется | игнорируется |
Идентификатор источника | 0 | игнорируется | игнорируется |
Время обновления | 0 | игнорируется | игнорируется |
Начальное время | 0 | см. описание | игнорируется |
Время приёма | 0 | см. описание | игнорируется |
Время отправки | см. описание | см. описание | см. описание |
Аутентификация | необязательно | необязательно | необязательно |
В одноадресном и многоадресном режиме клиент заполняет поля «НВ», «Режим» и, необязательно, «Время отправки». Остальные поля заполняются нулями. Сервер копирует поле «Время отправки» в «Начальное время» и устанавливает поля «Время приёма» и «Время отправки». «Время прибытия» фиксируется в момент приёма ответа от сервера.
Наименование | Код | Когда генерируется |
---|---|---|
Начальное время | Т1 | Время отправки запроса клиентом |
Время приёма | Т2 | Время приёма запроса сервером |
Время отправки | Т3 | Время отправки ответа сервером |
Время прибытия | Т4 | Время приёма ответа клиентом |
В качестве текущего времени устанавливается значение Т3 с поправкой t, которая вычисляется по формуле:
- t = ((Т2 – Т1) + (Т3 – Т4)) / 2
В широковещательном режиме клиент не получает информации о задержке распространения и коррекция не производится.
См. также
- Служба точного времени
- OpenNTPD
Ссылки
RFC 2030 — Simple Network Time Protocol (SNTP) Version 4
Основные протоколы TCP/IP по уровням модели OSI (Список портов TCP и UDP) | |
---|---|
Физический |
Ethernet • RS-232 • EIA-422 • RS-449 • RS-485 |
Канальный |
Ethernet • PPPoE • PPP • L2F • 802.11 Wi-Fi • 802.16 WiMax • Token ring • ARCNET • FDDI • HDLC • SLIP • ATM • CAN • DTM • X.25 • Frame relay • SMDS • STP • ERPS |
Сетевой |
IPv4 • IPv6 • IPsec • ICMP • IGMP • ARP • RARP • RIP2 • OSPF |
Транспортный |
TCP • UDP • SCTP • DCCP • RDP/RUDP • RTP • GRE |
Сеансовый |
ADSP • H.245 • iSNS • NetBIOS • PAP • RPC • L2TP • PPTP • RTCP • SMPP • SCP • ZIP • SDP |
Представления |
XDR • SSL • TLS |
Прикладной |
BGP • HTTP • HTTPS • DHCP • IRC • SNMP • DNS • DNSSEC • NNTP • XMPP • SIP • IPP • NTP • SNTP • Электронная почта (SMTP • POP3 • IMAP4) • Передача файлов (FTP • TFTP • SFTP) • Удалённый доступ (rlogin • Telnet • SSH • RDP) |
Другие прикладные |
OSCAR • CDDB • Multicast FTP • Multisource FTP • BitTorrent • Gnutella • Skype |