Automatische Wiederherstellung der letzten gespeicherten Konfiguration in Mikrotik-Routern.

Viele haben mit einer großartigen Funktion auf HPE-Switches Erfahrung gemacht: Wenn die Konfiguration aus irgendeinem Grund nicht manuell gespeichert wurde, wird beim Neustart die letzte gespeicherte Konfiguration geladen. Diese Technologie ist in gewisser Weise gnadenlos (wenn du vergisst zu speichern, musst du alles neu machen), aber gerecht und zuverlässig.

Auf MikroTik-Routern fehlt eine solche Funktion in der Basisversion, obwohl seit langem bekannt ist: "Eine entfernte Routerkonfiguration bedeutet eine lange Reise". Und selbst ein Router, der direkt neben einem steht, kann sehr leicht in einen "Ziegelstein bis zum Reset" verwandelt werden.

Seltsamerweise habe ich kein einziges Handbuch zu diesem Thema gefunden, sodass ich es selbst manuell machen musste.

Das erste, was wir tun, ist ein Skript zur Erstellung einer Sicherung der Konfiguration zu erstellen. In Zukunft werden wir den Zustand genau mit diesem Skript "speichern".

Wir gehen zu System -> Skripte und erstellen ein Skript, nennen wir es "fullbackup" (natürlich ohne Anführungszeichen).

system backup save dont-encrypt=yes name=Backup_full

Wir verwenden kein Passwort, da es sonst in dem benachbarten Skript explizit angegeben werden müsste. Von solch einem "Schutz" sehe ich keinen Sinn.

Wir erstellen ein zweites Skript, das die Konfiguration bei jedem Start wiederherstellt. Nennen wir es "full_restore".

Dieses Skript ist etwas komplexer. Bei der Wiederherstellung der Konfiguration erfolgt auch ein Neustart. Ohne einen Kontrollmechanismus wird ein zyklischer Neustart auftreten.

Der Kontrollmechanismus ist zwar etwas "starr", aber dafür zuverlässig. Bei jedem Start des Skripts erfolgt zunächst eine Überprüfung auf das Vorhandensein der Datei „restore_on_reboot.txt“.
Wenn diese Datei vorhanden ist, bedeutet das, dass eine Wiederherstellung aus dem Backup erforderlich ist. Wir löschen die Datei und führen die Wiederherstellung mit anschließendem Neustart durch.

Wenn diese Datei nicht vorhanden ist, erstellen wir einfach diese Datei und machen nichts weiter (das bedeutet, dass es sich bereits um den zweiten Start handelt, der nach der Wiederherstellung aus dem Backup erfolgt).

:if ([/file find name=restore_on_reboot.txt] != "") do={ /file rem restore_on_reboot.txt; system backup load name=Backup_full password=""} else={ /file print file=restore_on_reboot.txt }

Es ist am besten, die Funktionsweise der Skripte zu diesem Zeitpunkt zu überprüfen, bevor die Aufgabe zum Scheduler hinzugefügt wird.

Wenn alles in Ordnung ist, gehen wir zum dritten und letzten Schritt über – wir fügen die Aufgabe zur Ausführung des Skripts bei jedem Start in den Scheduler hinzu.

Wir gehen zu System -> Scheduler und fügen eine neue Aufgabe hinzu.
Im Feld Startzeit wir geben an startup (ja, so schreiben wir es, in Buchstaben)
Im Feld On Event schreiben wir
/system script run full_restore

Als nächstes das Skript zum Speichern der Konfiguration ausführen! Wir wollen doch all das nicht noch einmal machen?

Fügen wir irgendetwas an "Müll" in die Einstellungen ein, um es zu überprüfen, oder entfernen wir etwas Wichtiges, und schließlich versuchen wir, den Router neu zu starten.

Ja, viele werden wahrscheinlich sagen: „Es gibt doch den abgesicherten Modus!“. Dieser ist jedoch nicht geeignet, wenn Sie sich nach den Änderungen erneut mit dem Router verbinden müssen (zum Beispiel, wenn Sie die Adresse oder die WLAN-Einstellungen ändern, über die Sie verbunden sind). Und auch die Möglichkeit, zu „vergessen“, diesen Modus zu aktivieren, sollte nicht vergessen werden.

P.S. Das Wichtigste ist jetzt, nicht zu vergessen, „abzuspeichern“.

Quelle: habr.com

Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server 🔥 Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster