В статье я покажу ручной, но довольно быстрый способ, как можно перенести большой адрес-лист с одного роутера MikroTik на другой.
Как перенести адрес-лист на MikroTik
Например, у нас есть не очень большой адрес-лист с какими-то ip адресами, добавленными вручную. И мы хотим этот адрес-лист перенести на другой роутер MikroTik.
Я, для эксперимента, создал адрес-лист «test_list». С ним и будем работать:
Для того чтобы получить список ip-адресов в удобном для редактирования виде, откройте терминал и выполните следующую команду:
> :foreach i in=[/ip firewall address-list find list=test_list dynamic=no] do={:put [/ip firewall address-list get $i address]} 10.0.0.5 10.0.0.1 10.0.1.2 10.0.1.9 10.0.1.15 10.0.1.52 10.0.2.5 10.0.1.2.6 10.0.2.9 10.0.1.54 10.0.1.2.98 10.0.1.78 10.0.2.45 10.0.2.95 10.0.1.42
В команде выше, замените test_list на название вашего адрес-листа.
Затем просто скопируйте этот список в любой текстовый редактор себе на компьютер. И отредактируйте его так, чтобы он принял следующий вид:
/ip firewall address-list add list=test_list address=10.0.0.5 add list=test_list address=10.0.0.1 add list=test_list address=10.0.1.2 add list=test_list address=10.0.1.9 add list=test_list address=10.0.1.15 add list=test_list address=10.0.1.52 add list=test_list address=10.0.2.5 add list=test_list address=10.0.1.2.6 add list=test_list address=10.0.2.9 add list=test_list address=10.0.1.54 add list=test_list address=10.0.1.2.98 add list=test_list address=10.0.1.78 add list=test_list address=10.0.2.45 add list=test_list address=10.0.2.95 add list=test_list address=10.0.1.42
Я это делаю вручную с помощью вставки «add list=test_list address=» перед ip-адресом. Может быть в будущем найду способ это автоматизировать.
Получившуюся команду вставляю в терминал другого роутера и выполняю её! Тем самым создаю нужный адрес-лист.
Дополнительные команды
Я пытался всё это дело автоматизировать, но не смог. Зато нашёл способ сохранять адрес лист в файл таким образом:
/execute script={foreach i in=[/ip firewall address-list find list=test_list] do={:put [/ip firewall address-list get $i address]}} file=test_list.txt
Посмотреть на содержимое получившегося файлика вы можете с помощью следующей команды:
/file print detail without-paging where name=test_list.txt 0 name="test_list.txt" type=".txt file" size=162 creation-time=dec/24/2021 11:58:04 contents= 10.0.0.5 10.0.0.1 10.0.1.2 10.0.1.9 10.0.1.15 10.0.1.52 10.0.2.5 10.0.1.2.6 10.0.2.9 10.0.1.54 10.0.1.2.98 10.0.1.78 10.0.2.45 10.0.2.95 10.0.1.42
Я только начинаю привыкать к синтаксису командной строки на MikroTik. Возможно в будущем найду способ автоматизировать перенос адрес листов с одного MikroTik на другой.
Другие статьи по MikroTik доступны здесь! Спасибо за прочтение!
Спасибо!
не пробовал сделать просто
/ip firewall address-list export
В этом случае будут получены все адрес листы, а я выбираю нужный
там за тебя уже будет сделан файл, с набором команд как в твоём примере, откуда просто удалишь всё лишнее
where добавьте
Пример команды можете дать
Хотя начиная с версии 7.13 вы можете делать так: ip firewall address-list export where list=mylist
Раньше это было невозможно.
/ip firewall address-list export file=»имя файла.rsc» where list=»ваш лист»
будет вам файл с нужным листом и грузите потом на здоровье