Automatyczne przywracanie ostatniej zapisanej konfiguracji w routerach Mikrotik

Wiele osób natrafiło na cudowną funkcję, na przykład na przełącznikach HPE - jeśli z jakiegoś powodu konfiguracja nie zostanie zapisana ręcznie, po ponownym uruchomieniu poprzednia zapisana konfiguracja zostanie przywrócona. Technologia jest nieco bezwzględna (zapomniałem ją zapisać – zrób to jeszcze raz), ale uczciwa i niezawodna.

Ale w Mikrotiku nie ma takiej funkcji w bazie danych, chociaż znak jest znany od dawna: „zdalne ustawienie routera oznacza długą podróż”. Bardzo łatwo jest zamienić nawet pobliski router w „cegłę przed zresetowaniem”.

Co dziwne, nie znalazłem ani jednej instrukcji na ten temat, więc musiałem to zrobić ręcznie.

Pierwszą rzeczą, którą robimy, jest utworzenie skryptu umożliwiającego utworzenie kopii zapasowej konfiguracji. W przyszłości za pomocą tego skryptu „uratujemy” stan.

Iść do System -> Skrypty i utwórz skrypt, na przykład „fullbackup” (oczywiście bez cudzysłowów).

system backup save dont-encrypt=yes name=Backup_full

Nie będziemy używać hasła, bo w przeciwnym razie trzeba będzie je wyraźnie określić w sąsiednim skrypcie, nie widzę sensu takiej „ochrony”.

Tworzymy drugi skrypt, który przy każdym uruchomieniu przywróci konfigurację. Nazwijmy to „full_restore”.

Ten skrypt jest nieco bardziej skomplikowany. Faktem jest, że po przywróceniu konfiguracji następuje również ponowne uruchomienie. Bez użycia jakiegokolwiek mechanizmu sterującego otrzymamy cykliczny restart.

Mechanizm sterujący okazał się trochę „dąbowy”, ale niezawodny. Przy każdym uruchomieniu skrypt sprawdza najpierw obecność pliku „restore_on_reboot.txt”.
Jeśli taki plik istnieje, wymagane jest przywrócenie go z kopii zapasowej. Usuwamy plik i wykonujemy odzyskiwanie, a następnie ponowne uruchomienie.

Jeśli nie ma takiego pliku, po prostu go tworzymy i nic nie robimy (oznacza to, że jest to już drugie pobranie po przywróceniu z kopii zapasowej).

: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 }

Najlepiej przetestować skrypty na tym etapie, przed dodaniem zadania do harmonogramu.

Jeśli wszystko jest w porządku, przejdź do trzeciego i ostatniego kroku - dodaj do harmonogramu zadanie uruchamiania skryptu przy każdym uruchomieniu.

Iść do System -> Harmonogram i dodaj nowe zadanie.
W polu Czas zacząć wskazać startup (tak, tak to piszemy, listami)
W polu Na wydarzeniu napisz
/system script run full_restore

Ponadto uruchom skrypt, który zapisze konfigurację! Nie chcemy robić tego wszystkiego jeszcze raz, prawda?

Dodajemy trochę „śmieci” do ustawień w celu sprawdzenia lub usuwamy coś ważnego i na koniec próbujemy zrestartować router.

Tak, wielu prawdopodobnie powie: „Istnieje tryb awaryjny!” Nie zadziała jednak, jeśli w wyniku pracy będziesz musiał ponownie połączyć się z routerem (np. jeśli zmienisz adres lub parametry sieci Wi-Fi, przez którą jesteś podłączony). I nie należy zapominać o możliwości „zapomnienia” włączenia tego trybu.

PS Najważniejsze teraz to nie zapomnieć o „zapisaniu”.

Źródło: www.habr.com

Dodaj komentarz