Автоматично възстановяване на последната запазена конфигурация в рутери Mikrotik

Мнозина са се натъкнали на прекрасна функция, например на HPE комутатори - ако по някаква причина конфигурацията не е запазена ръчно, след рестартиране предишната запазена конфигурация се връща обратно. Технологията е донякъде безпощадна (забравихте да я запазите - направете го отново), но справедлива и надеждна.

Но в Mikrotik няма такава функция в базата данни, въпреки че знакът отдавна е известен: „дистанционната настройка на рутер означава дълго пътуване“. И е много лесно да превърнете дори рутер наблизо в „тухла преди нулиране“.

Колкото и да е странно, не намерих нито едно ръководство по този въпрос, така че трябваше да го направя на ръка.

Първото нещо, което правим, е да създадем скрипт за създаване на резервно копие на конфигурацията. В бъдеще ще „спасим“ държавата с този скрипт.

Отидете на Система -> Скриптове и създайте скрипт, например „fullbackup“ (разбира се, без кавички).

system backup save dont-encrypt=yes name=Backup_full

Няма да използваме паролата, тъй като в противен случай тя ще трябва да бъде посочена изрично в съседния скрипт; не виждам смисъл от такава „защита“.

Създаваме втори скрипт, който ще възстановява конфигурацията при всяко стартиране. Нека го наречем "full_restore".

Този скрипт е малко по-сложен. Факт е, че когато конфигурацията се възстанови, се появява и рестартиране. Без да използваме никакъв контролен механизъм, ще получим циклично рестартиране.

Механизмът за управление се оказа малко „дъбов“, но надежден. Всеки път, когато скриптът се стартира, той първо проверява за наличието на файла „restore_on_reboot.txt“.
Ако такъв файл съществува, тогава е необходимо възстановяване от резервно копие. Изтриваме файла и правим възстановяване, последвано от рестартиране.

Ако няма такъв файл, ние просто създаваме този файл и не правим нищо (т.е. това означава, че това вече е второто изтегляне след възстановяване от резервно копие).

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

Най-добре е да тествате скриптовете на този етап, преди да добавите задачата към планировчика.

Ако всичко е наред, преминете към третата и последна стъпка - добавете към планировчика задачата за стартиране на скрипта при всяко зареждане.

Отидете на Система -> График и добавете нова задача.
В областта Началният час посочете стартиране (да, така го пишем, с букви)
В областта На събитието пиши
/system script run full_restore

Освен това, стартирайте скрипта, който запазва конфигурацията! Не искаме да правим всичко това отново, нали?

Добавяме малко „боклук“ към настройките, за да проверим или изтриваме нещо важно и накрая се опитваме да рестартираме рутера.

Да, мнозина вероятно ще кажат: „Има безопасен режим!“ Въпреки това, няма да работи, ако в резултат на работа трябва да се свържете отново с рутера (например, ако промените адреса или параметрите на wifi мрежата, през която сте свързани). И не трябва да забравяте за възможността да „забравите“ да включите този режим.

PS Основното нещо сега е да не забравяте да „спестите“.

Източник: www.habr.com

Добавяне на нов коментар