В статті Налаштування OpenVPN-сервера на Mikrotik було наведено скрипт, який оновлює інформацію щодо публічних ntp-серверів, з яких Mikrotik може брати інформацію про точний час. Але справа в тому, що то для RouterOS гілки 6.x, а от для 7.x його доведеться трохи переписати:
/system script add dont-require-permissions=no name=NTPupdate owner=olden policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive source=":global SYSname [/system identity get name];\r\ \n\r\ \n# NTP pools to use (check www.pool.ntp.org)\r\ \n:global SYSntpa \"0.ua.pool.ntp.org\";\r\ \n:global SYSntpb \"1.ua.pool.ntp.org\";\r\ \n\r\ \nping \$SYSntpa count=2 do-not-fragment;\r\ \nping \$SYSntpb count=2 do-not-fragment;\r\ \n\r\ \n# Resolve the two ntp pool hostnames\r\ \n:local ntpipa [:resolve \$SYSntpa];\r\ \n:local ntpipb [:resolve \$SYSntpb];\r\ \n\r\ \n# Get the current settings\r\ \n:local ntpcura [/system/ntp/client/servers/get 0];\r\ \n:local ntpcurb [/system/ntp/client/servers/get 1];\r\ \n\r\ \n# Define a variable so we know if anything's changed.\r\ \n:local changea 0;\r\ \n:local changeb 0;\r\ \n\r\ \n# Change primary if required\r\ \n:if (\$ntpipa != \$ntpcura) do={\r\ \n :put (\"Old: \" . \$ntpcura . \" New: \" . \$ntpipa);\r\ \n :put \"Changing primary NTP\";\r\ \n /system/ntp/client/servers/set 0 address=\"\$ntpipa\";\r\ \n :set changea 1;\r\ \n }\r\ \n\r\ \n# Change secondary if required\r\ \n:if (\$ntpipb != \$ntpcurb) do={\r\ \n :put (\"Old: \" . \$ntpcurb . \" New: \" . \$ntpipb);\r\ \n :put \"Changing secondary NTP\";\r\ \n /system/ntp/client/servers/set 1 address=\"\$ntpipb\";\r\ \n :set changeb 1;\r\ \n }\r\ \n\r\ \n:if (\$changea=1 or \$changeb=1) do={\r\ \n /system ntp client set enabled=\"no\"\r\ \n /ip dhcp-server network set [ find comment=\"dhcp-server\" ] ntp-server=\"192.168.31.1,\$ntpipa,\$ntpipb\"\r\ \n /system ntp client set enabled=\"yes\"\r\ \n }\r\ \n"Ну й не забуваємо його періодично викликати, для актуалізації інформації по ip-адресах ntp-серверів:
/system scheduler add comment="Check and set NTP servers" interval=12h name=NTPupdate on-event="/system script run NTPupdate\r\ \n" policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive start-date=jan/01/1970 start-time=00:00:00