MikroTik import konfiguracji bez wprowadzania zmian (dry-run)

źródło: https://mikrotik.com/product/hap_ax3#product_specification

Prędzej czy później każdy zmierzy się z problemem przeniesienia konfiguracji z urządzenia na urządzenie. Tutaj z pomocą przychodzi polecenie import. W tym artykule opiszę jego parametr dry-run. Symuluje on import bez wprowadzania zmian w konfiguracji. Pomaga to w wychwytywaniu błędów składniowych. Ta opcja jest dostępna tylko w trybie verbose. Jednak nie rozwiązuje ona wszystkich problemów, już wyjaśniam dla czego.

Załóżmy, że mamy do zaimportowania prosty plik konfiguracji. Dodaje on opisy do interfejsów ether1-3

/interface/ethernet/set ether1 comment="ether1"
/interface/ethernet/set ether2 comment="ether2
/interface/ethernet/set ether3 comment="ether3"

Zauważ, że w środkowym wierszu brakuje cudzysłów zamykający komentarz. Spróbuję teraz zaimportować plik test.rsc z powyższą zawartością ale w trybie dry-run. Robię to za pomocą polecenia:

/import file-name=test.rsc dry-run verbose=yes

Jak widać powyżej polecenie import znalazło błąd w skrypcie. Tak naprawdę nie importowało tej konfiguracji – sprawdzało tylko jej poprawność. Zlikwiduję teraz ten błąd i jeszcze raz wykonam import z parametrem dry-run.

Jak widać tym razem w skrypcie nie zostały znalezione błędny, więc teoretycznie jest on gotowy do importu. Spróbuję zatem to zrobić (już produkcyjnie, bez opcji dry-run).

Co się teraz wydarzyło? Skrypt przechodził przez dry-run, ale nie został prawidłowo zaimportowany. Otóż w moim routerze jest tylko jeden port ethernet (jest to CHR). Więc przy próbie dodania komentarza do interfejsu ether2 pojawił się błąd no such item, ponieważ nie ma takiego interfejsu na tym routerze.

Wniosek jest taki, ze parametr dry-run w poleceniu import uchroni nas przed błędami w składni, ale świadczy to o tym, że dany skrypt na pewno poprawnie się zaimportuje na routerze.

Koniec 🙂

Jeżeli pomogłem to Postaw mi kawę na buycoffee.to ,a będę miał więcej energii na pisanie kolejnych ciekawych wpisów.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *