Viimase salvestatud konfiguratsiooni automaatne taastamine Mikrotik ruuterites

Paljud on kohanud imelist võimalust näiteks HPE-lülitite puhul – kui mingil põhjusel ei salvestata konfiguratsiooni käsitsi, siis pärast taaskäivitamist keeratakse eelmine salvestatud konfiguratsioon tagasi. Tehnoloogia on mõnevõrra halastamatu (unustasin selle salvestada - tee seda uuesti), kuid õiglane ja usaldusväärne.

Mikrotikas aga andmebaasis sellist funktsiooni pole, kuigi märk on ammu teada: "ruuteri kaughäälestus tähendab pikka teekonda." Ja isegi lähedalasuvat ruuterit on väga lihtne muuta telliskiviks enne lähtestamist.

Kummalisel kombel ei leidnud ma selle teema kohta ühtegi juhendit, nii et pidin seda käsitsi tegema.

Esimese asjana loome skripti konfiguratsiooni varukoopia loomiseks. Edaspidi “päästame” selle stsenaariumiga riigi.

Minema Süsteem -> Skriptid ja looge skript, näiteks "fullbackup" (muidugi ilma jutumärkideta).

system backup save dont-encrypt=yes name=Backup_full

Me ei kasuta parooli, kuna vastasel juhul tuleb see külgnevas skriptis selgesõnaliselt määrata; ma ei näe sellisel "kaitsel" mõtet.

Loome teise skripti, mis taastab konfiguratsiooni iga kord, kui see käivitub. Nimetagem seda "full_restore".

See skript on veidi keerulisem. Fakt on see, et konfiguratsiooni taastamisel toimub ka taaskäivitamine. Ilma juhtimismehhanismi kasutamata saame tsüklilise taaskäivituse.

Juhtmehhanism osutus pisut “tammeks”, kuid töökindlaks. Iga kord, kui skript käivitatakse, kontrollib see esmalt faili „restore_on_reboot.txt” olemasolu.
Kui selline fail on olemas, on vajalik varukoopiast taastamine. Kustutame faili ja teeme taastamise, millele järgneb taaskäivitamine.

Kui sellist faili pole, loome lihtsalt selle faili ega tee midagi (st see tähendab, et see on juba teine ​​allalaadimine pärast varukoopiast taastamist).

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

Parim on skripte testida selles etapis, enne ülesande lisamist ajakavasse.

Kui kõik on korras, jätkake kolmanda ja viimase sammuga – lisage planeerijale ülesanne käivitada skript igal alglaadimisel.

Minema Süsteem -> Planeerija ja lisage uus ülesanne.
Valdkonnas Algusaeg osutada käivitamisel (jah, nii me kirjutame selle tähtedega)
Valdkonnas Sündmusel kirjuta
/system script run full_restore

Lisaks käivitage skript, mis salvestab konfiguratsiooni! Me ei taha seda kõike uuesti teha, eks?

Lisame seadetesse “prügi”, et kontrollida või kustutada midagi olulist ja lõpuks proovida ruuterit taaskäivitada.

Jah, arvatavasti ütlevad paljud: "Seal on turvarežiim!" See aga ei tööta, kui peate töö tulemusena uuesti ruuteriga ühenduse looma (näiteks kui muudate selle wifi võrgu aadressi või parameetreid, mille kaudu olete ühenduses). Ja te ei tohiks unustada võimalust selle režiimi sisse lülitada "unustada".

PS Peamine on nüüd mitte unustada “salvestamist”.

Allikas: www.habr.com

Lisa kommentaar