WireGuard-Peer-Endpunktadresse über DNS auf MikroTik RouterOS aktualisieren
Update 2022-12-30: Code aktualisiert, verwendet nun Variablen
Angenommen, der Peer-Kommentar ist peer1 und der korrekte Endpunkt-DNS-Eintrag ist peer1.mydomain.com, dann kann dieses RouterOS-Skript verwendet werden, um den Endpunkt basierend auf dem DNS-Eintrag zu aktualisieren:
local PEERCOMMENT
local DOMAIN
set PEERCOMMENT "peer1"
set DOMAIN "peer1.mydomain.com"
if ([interface wireguard peers get number=[find comment=$PEERCOMMENT] value-name=endpoint-address] != [/resolve $DOMAIN]) do={
interface wireguard peers set number=[find comment=$PEERCOMMENT] endpoint-address=[/resolve $DOMAIN]
}Die Variablen an die eigene Wireguard-Konfiguration anpassen: PEERCOMMENT auf den Kommentar des Peers setzen, der aktualisiert werden soll, und DOMAIN auf den DNS-Domainnamen setzen, der zum Aktualisieren der IP-Adresse des Peers verwendet werden soll.
Danach als neues Skript unter System -> Scripts hinzufügen, dann einen Scheduler hinzufügen, um das Skript z.B. alle 30 Sekunden unter System -> Scheduler auszuführen.
Skript-Einstellungen

Scheduler-Einstellungen

Verwandte Beiträge, die den Prozess leichter verständlich machen:
- MikroTik: WireGuard-Peer-Endpunktadresse mit DNS-Eintrag abgleichen (RouterOS-Skript)
- RouterOS-Skripting: WireGuard-Peer-Endpunktadresse auf MikroTik auslesen