Equipos y materiales > Openwrt & LEDE

ntpd no me funciona, hora loca, ni idea de qué pasa

<< < (2/3) > >>

Tki2000:
¿Esas dos horas de diferencia son cuadradas?
A ver si va a ser algo relativo al horario de invierno y verano...

Por cierto, ¿has visto esta advertencia? https://www2.roa.es/hora/index.html

A mi me salen 2 horas y 8 segundos de diferencia con los servidores roa.... Mi consejo es que no los uses. Por lo poco que he entendido dan la hora utc.

raphik:

--- Cita de: peperfus en 28-05-2021, 00:06 (Viernes) ---... el servidor y cliente de hora de mi openwrt no va bien ... y tampoco consigo sincronizar la hora del PC poniendo el open como servidor ... ando muy perdido con esto...
--- Fin de la cita ---


--- Cita de: peperfus en 29-05-2021, 20:29 (Sábado) ---... investigaré un poco esto e iré poniendo cosas ... tiene mucha miga esto del ntp ...
--- Fin de la cita ---

He estado investigando y, si no te molesta, compartiré aquí mis hallazgos.

TIPOS DE HORA:

Los dispositivos informáticos manejan dos tipos de hora: UTC y local. En un mismo momento, la hora UTC es la misma para todos los lugares del planeta. Contrariamente, la hora local varía en función de la longitud geográfica y de la política de los países, estableciéndose las llamadas zonas horarias.

Para ver la hora UTC en el router, abrir un terminal y teclear

--- Código: ---date --utc
Sat May 29 19:20:02 UTC 2021
--- Fin del código ---

Para ver la hora local no hay que poner parámetro

--- Código: ---date
Sat May 29 21:20:02 CEST 2021
--- Fin del código ---
(CEST es la zona horaria: Central European Summer Time)


ZONA HORARIA (TZ) y nombre de la zona:
MÁS INFO: https://developer.ibm.com/technologies/systems/articles/au-aix-posix/

El nombre de la zona sigue el llamado formato Olson. Típicamente Continente/País.
La zona horaria tiene formato POSIX, que es algo más complicado. Contiene elementos que permite calcular la hora UTC a partir de la hora local.

LuCI permite seleccionar la zona horaria preferida por su nombre (Continente/País) y guarda el par Olson/Posix en /etc/config/system. Se puede visualizar

--- Código: ---cat /etc/config/system | grep zone
option timezone 'CET-1CEST,M3.5.0,M10.5.0/3'
option zonename 'Europe/Madrid'
--- Fin del código ---

En el router, la lista de zonas horarias está en

--- Código: ---cat /usr/lib/lua/luci/sys/zoneinfo/tzdata.lua
--- Fin del código ---

En Internet hay listas más completas
https://github.com/openwrt/luci/blob/56deb7b2cf5f295b264f245debb03b19716e84a7/modules/luci-base/luasrc/sys/zoneinfo/tzdata.lua

Adicionalmente, el código POSIX se guarda en /etc/TZ

--- Código: ---cat /etc/TZ
CET-1CEST,M3.5.0,M10.5.0/3
--- Fin del código ---

POSIX se puede descifrar. Lo vemos con el ejemplo CET-1CEST,M3.5.0,M10.5.0/3.

CET-1CEST es el nombre completo de la zona horaria. A su vez, CET es la abreviatura para la hora local, CEST para la hora de verano y -1 significa que la hora UTC se calcula restando 1 a la hora local.

M3.5.0 se refiere al comienzo del horario de verano:
M3 = mes de marzo, 5 = última ocurrencia, 0 = domingo => El horario de verano empieza el último domingo de marzo

M10.5.0 se refiere al comienzo del horario normal (de invierno)
M10 = mes de noviembre, 5 = última ocurrencia, 0 = domingo => El horario normal (de invierno) empieza el último domingo de noviembre.

/3 es la hora local a la que tiene lugar el cambio de horario de verano a invierno.

La hora de verano, cuando la hay, se calcula sumando una hora a la hora local de invierno.

No quiero alargar más este post. En el próximo añadiré algunos ejemplos.

raphik:
Estos ejemplos pueden ser útiles para entender mejor lo anterior.

La hora universal, la hora local y la zona horaria (TZ) están estrechamente relacionadas.

Establecer la zona horaria: Europe/London
En LuCI, pestaña System - System - General Settings, elegir Timezone: Europe/London y pulsar el botón "Save & Apply".

Esto provoca cambios en el fichero /etc/config/system. Para visualizarlos,

--- Código: ---cat /etc/config/system | grep zone
option timezone 'GMT0BST,M3.5.0/1,M10.5.0'
option zonename 'Europe/London'
--- Fin del código ---

Análisis de la "timezone":
GMT (Greenwich Mean Time) = horario de invierno
BST (British Summer Time) = horario de verano
0 = durante el horario de invierno la hora local y la hora universal coinciden
M3.5.0/1 = el horario de verano empieza el último domingo de marzo a la una de la mañana GMT
M10.5.0 = el horario de invierno empieza el último domingo de noviembre

Simulación de la entrada del horario de verano

--- Código: ---echo "$(date --utc -s '2021-03-28 00:59:59') | $(date)" && echo "$(date --utc -s '2021-03-28 01:00:00') | $(date)"
Sun Mar 28 00:59:59 UTC 2021 | Sun Mar 28 00:59:59 GMT 2021
Sun Mar 28 01:00:00 UTC 2021 | Sun Mar 28 02:00:00 BST 2021
--- Fin del código ---
A las 00:59:59, hora local, rige el horario de invierno (GMT). Un segundo después entra el horario de verano (BST) y se adelanta la hora.

Simulación de vuelta al horario de invierno

--- Código: ---echo "$(date --utc -s '2021-10-31 00:59:59') | $(date)" && echo "$(date --utc -s '2021-10-31 01:00:00') | $(date)"
Sun Oct 31 00:59:59 UTC 2021 | Sun Oct 31 01:59:59 BST 2021
Sun Oct 31 01:00:00 UTC 2021 | Sun Oct 31 01:00:00 GMT 2021
--- Fin del código ---
A las 01:59:59 hora local rige el horario de verano (BST). Al segundo siguiente vuelve el horario de invierno (GMT) y se atrasa la hora.

En España hay dos zonas horarias: Atlantic/Canary WET0WEST y Europe/Madrid CET-1CEST.

Aunque suene raro, Canarias y el Reino Unido están en zonas horarias distintas, por más que sus horas locales coincidan.
Canarias: WET0WEST,M3.5.0/1,M10.5.0
Reino Unido: GMT0BST,M3.5.0/1,M10.5.0

También suena raro que España peninsular y Túnez estén en la misma zona horaria en invierno, pero no en verano.
España peninsular: CET-1CEST,M3.5.0,M10.5.0/3
Túnez: CET-1


La división horaria dentro de un mismo país puede ir de lo más simple a lo más complejo.

Argentina tiene una única zona horaria: ART3. No hay horario de verano.

Francia cuenta con 13 zonas horarias, que van desde Pacific/Tahiti TAHT10 hasta Pacific/Wallis WFT-12. Unas con horario de verano y otras no.

Tki2000:
@raphik
Me descubro mi humilde calvorota ante tanta sapiencia... y bien explicada...
 >:( >:( >:(

peperfus:
Perdonad, he estado ocupado.

Raphik, ¿cómo me va a molestar? Encantado, para eso está el foro, para compartir conocimiento y experiencia, investigar, etc

De momento, la hora me va bien. No sé qué toqué. Creo que desactivé zerotier .... no sé si habrá tenido algo que ver o no.
Ahora mismo lo tengo con hora.roa.es y secundario minuto.roa.es y me da la hora OK.
También quité un parámetro 42 de las DHCP options ....

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

[*] Página Anterior

Ir a la versión completa