When I set Time Zone Autodetect in the System → Clock the Time Zone Name is not correctly defined, I am in Europe/Athens but the Mikrotik defines it as Europe/Kiev. I know that earlier my prefix was with Ukrainian ISP, but now it is Greek ISP and according to all geo ip databases my ip address is defined as Greek. My question is what databases are used by MIKROTIK to detect my geo ip or does it “fly in” from NTP server?
This one is used: https://www.iana.org/time-zones
Make sure you are on the latest RouterOS version
NTP doesn’t do anything with time zones.
GeoIP is pseudo-science, just guessing..
CGNAT ISPs also makes the guessing hard.. I suggest just setting the timezone.
…and disable autodetect, unless you constantly move the router from one time zone to another.
Autodetect on/off do not influence DST, the change is still automatic, if the time zone set use it.
Agreed.
But to be clear, the geolocation for timezone is based the IP detected by /ip/cloud. See https://help.mikrotik.com/docs/display/ROS/Clock
. The time zone is detected depending on the router’s public IP address and our Cloud servers database. Since RouterOS v6.43 your device will use cloud2.mikrotik.com to communicate with MikroTik’s Cloud server.
Useless call home.
It should be done once and off the first successfull time you turn on the device on internet, not other times.
Not really, modern carriers and ISPs are rolling out RFC8805, which gives you accurate info upto the zip/pin code, even for individual /32 v4 or /128 IPv6 if you want it to.
In MikroTik, even if I use my own commercial ASN/IP address space, the autodetect never worked correctly, even though RFC8805 information is updated on all popular Geolocation DB providers.
Autodetect TZ is a reasonable default… but setting it a TZ is a better idea.
Mainly because the logs only record the clock time, not UTC. And dealing with TZ and logging is hard enough, so the last things you’d want is the vagaries of autodetect TZ. If someone uses any logging system, it’s likely better to just set RouterOS to UTC, and let the logging system resolve local time as needed.
What is “not really”? When users are sharing public IPs, a single /32 can be spread accross wide areas.
Even with RFC8805, you said it doesn’t work.
GeoIP is usually accurate for the country, anything more than that, sometimes..
Works okay on Android, iOS though. Static is best though.
This does beg the question what geolocation service is Mikrotik using in /ip/cloud backend.
e.g. it’s not Olsen DB as normis suggests, since that’s names:
That is how it updates the serial number DDNS so it does need to be done frequently, and time doesn't advance when a RouterBoard is unplugged, so if that is the configured time source, I expect to check in semi-frequently.
Should still just set the timezone.. Maybe a future update will allow different users to have different time zones as other systems allow.
Because it is getting it from the local cellular tower or GNSS, the phone knows where it is.
Not GeoIP.
This should be done from webfig/winbox based on how the OS is set up, not a router setting…
I’m just not sure of the use case for “per user” timezones.
It starts getting complex if you do something like set scheduled script – is the time RouterOS TZ or the logging user, etc., etc.?
Also, logging is just text, and timezone is not saved… so there too, it gets complex.
If there is only one timezone, and even more simple if static, life is easier.
Basically phone gets timezone from cellular tower. Offset from UTC only (in 15-minute steps), not TZ name, but for showing local time that’s enough. GNSS doesn’t provide timezone, it provides coordinate … but with decent TZ map it’s possible to deduce TZ.
Sorry, my mistake. Timezone DB is IANA, but for auto-timezone we use the IP that is used to connect to the MikroTik cloud. This IP is compared to Maxmind GeoIP database. It is updated approximately once per month.
Sorry, my mistake. Timezone DB is IANA, but for auto-timezone we use the IP that is used to connect to the MikroTik cloud. This IP is compared to Maxmind GeoIP database. It is updated approximately once per month.
I revive the topic.
We have several Mikrotik routers, with the same problem. It indicates the country incorrectly with the public IP.
In Maxmind GeoIP database, we appear correctly in Spain (Europe):
https://www.maxmind.com/en/geoip-demo
https://www.maxmind.com/en/geoip-databases
But the routers in System / Clock: America/Sao_Paulo, this is incorrect. Europe/Madrid is correct.
MikroTik databases not updated?
Greetings.
Some features, for me, are completely useless.
How often does the device change countries/time zones during normal use?
Turning off auto detection also makes less useless “home calls”…
Some features, for me, are completely useless.
How often does the device change countries/time zones during normal use?Turning off auto detection also makes less useless "home calls"...
Hi;
What really worries us is that our public IPs are being identified in another country. When we read the Post we saw that it is consulted in Maxmind and every month. But in Maxmind we appear correctly located with our public IPs. Apparently this is because the IP geolocation database is not being updated, or the previous IPs are not being deleted before updating the database and there are two locations.
We want to correct the geolocation of our public IPs on all sites. This could take up to several months to complete.
Whenever the routers are restarted, the time is set incorrectly, and search the logs with the wrong time. We have approximately 100 routers.
Greetings.