Files
bf-infra/routeros/tp19-ntp-core-als-zeitquelle.rsc

35 lines
2.1 KiB
Plaintext

# NTP: den Core zur Zeitquelle des Standorts machen.
#
# BEFUND (2026-08-18, beim TP19-Abschluss gefunden):
# ap1 ntp client -> 10.40.99.1, status=waiting, Uhr zufaellig noch richtig
# ap2 ntp client -> 10.40.99.1, status=waiting, Uhr **17 Stunden nach**
# branch ntp client -> gar keiner, status=stopped
# core /system ntp server = enabled:no
# Alle drei fragen also einen Zeitserver, den es nicht gibt ("waiting" heisst
# genau das). ap2 ist nur der erste, der sichtbar weggelaufen ist — die anderen
# folgen.
#
# WARUM DAS MEHR ALS KOSMETIK IST: Geraete-Logs sind das Hauptwerkzeug in diesem
# Projekt (TP5 lebt vom Kollektor). Beim Pfadbeweis heute nacht hat ap2 einen
# Logeintrag von 04:57 als "2026-08-17 12:19" gestempelt — eine Korrelation
# ueber mehrere Geraete ist damit wertlos.
#
# WEG: der Core hat als einziger eine verlaessliche Zeit (WAN + DoH). Er wird
# Server, die drei anderen bleiben/werden Clients auf 10.40.99.1. Kein Geraet
# braucht dafuer Internet.
#
# ⚠️ Die input-Regel ist Pflicht: seit Etappe 4 endet `input` mit einem Drop.
# Ohne sie waere der NTP-Server eingeschaltet und trotzdem unerreichbar —
# derselbe stille Fehlschlag wie bisher, nur eine Ebene tiefer.
#
# Push: python3 nautobot/gc-manual-plan.py --device crs326-core \
# --commands-file routeros/tp19-ntp-core-als-zeitquelle.rsc \
# --change-id TP19-NTP --deploy \
# --assert '/system/ntp/server|enabled=true'
# ---------------------------------------------------------------------------
:do { /system ntp server set enabled=yes } on-error={ :log info "tp19ntp: 01 server warf" }
:do { :if ([:len [/ip firewall filter find comment="TP5-E4: ntp"]] = 0) do={ /ip firewall filter add chain=input action=accept in-interface-list=LAN protocol=udp dst-port=123 comment="TP5-E4: ntp" place-before=[/ip firewall filter find comment="TP5: input log-only"] } } on-error={ :log info "tp19ntp: 02 fw warf" }
:log info ("tp19ntp: ENDE server-enabled=" . [:tostr [/system ntp server get enabled]] . " fw-regel=" . [:tostr [:len [/ip firewall filter find comment="TP5-E4: ntp"]]])