в Mikrotik

Данная статья является копией публикации на хабре (написанной мной же)

Данная статья является логическим завершением небольшой дискуссии с тов. vvzvlad, которая развернулась под топиком «Чистим домашний интернет от очень назойливой рекламы (Ad’s blocker для OpenWRT)«, где автор с помощью wget, sed и cron на OpenWRT успешно сливает файлы рекламных хостов, парсит и подсовывает dns-серверу dnsmasq.

Переадресовывая клиента при запросе «рекламного» домена, например, на loopback (127.0.0.1 — 127.255.255.255), вместо котента рекламы клиент получит благодатное «ничего» (разумеется, при условии, что у нас не работает локальный веб-сервер который слушает локалхост). Механизм фильтрации довольно старый и не лишен недостатков. Например, нельзя указать маски хостов (*.ad-domain.tld) или «вырезать» рекламу, баннеры которой хостятся на запрашиваемых ресурсах. Но зато не привязан к какому-то либо протоколу и довольно прост в эксплуатации. Более того, если его использовать, например, на домашнем или офисном маршрутизаторе, который используется в качестве DNS сервера, реклама успешно порежется на всех гаджетах, где IP нашей железки прописан первым в качестве DNS сервера.

Но что если у нас вместо роутера с кастомной прошивкой используется.. MikroTik (RouterOS), функционал которого накладывает некоторые ограничения? Под катом вы узнаете каким образом удалось успешно «сконвертировать» файл хостов в пригодный для него формат, как автоматизировать это дело и что для хабралюдей в качестве бонуса был создан небольшой сервис как раз для автоматизации этого процесса (маленький, абсолютно бесплатный и с открытыми исходниками).

Настраиваем MikroTik

Настройка самой железки вряд ли вызовет какие-либо трудности. Укажем IP маршрутизатора в качестве первого DNS сервера в DHCP — «IP» → «DHCP Server» → «Networks» → %default config%. Первым прописываем IP самого MikroTik-а, нажимаем «OK»:

DNS сервер работает «из коробки», и можно даже не менять его стоковые настройки:


Единственная интересная для нас кнопка — «Static» («Статические маршруты»), в которых мы должны прописать «рекламные» домены, указав куда такие запросы перенаправлять.

Конвертируем файл хостов

Файл хостов имеет формат:

# Any comments
127.0.0.1 localhost
127.0.0.1 domain-a.tld
127.0.0.1 domain-b.tld

Формат скрипта для MikroTik, использующий статические DNS маршруты:

# Any comments
/ip dns static
add address=127.0.0.1 name=localhost
add address=127.0.0.1 name=domain-a.tld
add address=127.0.0.1 name=domain-b.tld

Для получения актуальных списков первого и преобразования их во второй мы выполним простые команды в шелле на, например, десктопе (bash):

  1. Скачиваем списки и аккуратно складываем их под именами ./hosts_list.1, ./hosts_list.2 и т.д.:
    $ src=('http://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts&showintro=0&mimetype=plaintext' 'https://adaway.org/hosts.txt'); i=0; for file in ${src[*]}; do i=$((i+1)); wget --no-check-certificate -O "./hosts_list.$i" "$file"; done;
  2. Грепаем всё что начинается на ‘127.0.0.1 ‘, удаляем комменты, оставляем только имена доменов, убираем дубликаты, убираем пустые строки и оформляем каждый домен в виде команды для импорта:
    $ in="./hosts_list.*" && out="./adblock_dns.rsc" && host='127.0.0.1'; echo "/ip dns static" > $out && grep '127.0.0.1 ' $in | grep -v '^#' | cut -d' ' -f 2 | sort -u | grep . | sed "s/^/add address=$host name=/" >> $out && rm -f $in; wc -l $out;

    Да, надо бы использовать регулярку и вообще всё переделать, но самое главное — я передал тебе свою мысль, дальше дело за тобой

На выходе у нас получится файл adblock_dns.rsc, который не лишним будет дополнительно проверить на корректность содержимого.

Импортируем в MikroTik

Для того, чтобы импортировать полученный файл, мы цепляемся к маршрутизатору по ftp, заливаем adblock_dns.rsc, после чего цепляемся по ssh или открываем терминал, в котором выполняем:

  1. Делаем резервную копию (полученный бэкап лучше сохранить у себя на машине):
    /system backup save
  2. Если у тебя в таблице нет важных маршрутов, то можем грохнуть все имеющиеся записи:
    /ip dns static remove [/ip dns static find]
  3. Импортируем загруженный файл:
    /import adblock_dns.rsc
  4. Убираем за собой:
    /file remove adblock_dns.rsc

Теперь можешь (опционально) перезагрузить MikroTik, проверить корректность получения адресов DNS серверов по DHCP и попытаться открыть какой-либо ресурс, который ранее был наводнен рекламой — её должно стать ощутимо меньше.

Эмпирически доказано что при импортировании ~5500 записей Mikrotik hAP lite (650MHz @ RAM 32 Mb) встает почти колом при попытке в GUI открыть таблицу статических маршрутов. Перезагрузка помогает

Автоматизация

Один из простейших вариантов автоматизации — скрипт на баше, который по крону поддерживает в актуальном состоянии adblock_dns.rsc, находящийся в открытом доступе по, скажем, ftp. Его основа была уже описана выше, осталось только оформить его по твоему усмотрению (необходима отдельная машина).

Ещё один вариант — это использование MetaRouter на самом или соседнем MikroTik-е, на котором установлен тот же OpenWRT (избавляемся от необходимости в отдельной машине; этот вариант не расписан подробно за неимением достойного MikroTik-а под руками).

Второй скрипт (на MikroTik) забирает его (adblock_dns.rsc), делает бэкап и, если и файл скачался успешно, и бэкап сохранился успешно, его импортирует, предварительно (внимание) грохнув все имеющиеся маршруты:

:local hostScriptUrl "ftp://user:[email protected]_host:21/adblock_dns.rsc";

:local scriptName "adblock_dns.rsc";
:local backupFileName "before_stopad";
:local logPrefix "[StopAD]";

do {
 /tool fetch mode=ftp url=$hostScriptUrl dst-path=("./".$scriptName);
 :if ([:len [/file find name=$scriptName]] > 0) do={
   /system backup save name=$backupFileName;
   :delay 1s;
   :if ([:len [/file find name=($backupFileName.".backup")]] > 0) do={
     /ip dns static remove [/ip dns static find];
     /import file-name=$scriptName;
     /file remove $scriptName;
     :log info "$logPrefix AD block script imported, backup file (\"$backupFileName.backup\") created";
   } else={
     :log warning "$logPrefix Backup file not created, importing AD block script stopped";
   }
 } else={
   :log warning "$logPrefix Backup file not downloaded, script stopped";
 }
} on-error={
 :log warning "$logPrefix AD block script download FAILED";
};

Бонус для хабралюдей

А что делать, если у тебя дома/офисе/гараже стоит MikroTik и хочется или просто порезать рекламу, или автоматизировать обновление хостов, не поднимая никакие метароутеры и хосты с файлами по ftp, вот чтоб просто и без заморочек?
Правильно, нужно чтобы это поднял кто то за тебя. И в качестве бонуса — такая штука уже поднята.

Смысл заключается в следующем — тебе достаточно перейти на нужную страницу, указать свои настройки и получить URL, по которому будет доступен скрипт с указанными тобой настройками. Там же будет предоставлен и исходник готового скрипта для тебя. Возможности, которые реализованы на данный момент:

  • Выбор из списка публичных файлов-хостов (спасибо AdAway для Android);
  • Хочется указать свои источники? Без проблем! (можно, например, указать три публичных хост-файла и два своих, расположенных на том-же gist.github.com, получив таким образом довольное удобное средство управления статическими маршрутами на подопечных маршрутизаторах);
  • Настраиваемый адрес (IP v4) перенаправления;
  • Указание ограничения (лимита) количества записей в итоговом скрипте (для того чтоб «случайно» не положить «слабую» железку);
  • Указание своих маршрутов (будут просто добавлены первыми в генерируемый скрипт);
  • Возможность указания исключений — нужные домены никогда не будут «заблокированы»;
  • Довольно удобная генерация готового скрипта для MikroTik;

Парсер написан на PHP (потребует php5-curl), лицензия MIT, исходники доступны по ссылке mikrotik-hosts-parser. Сколько сервис проживет — не берусь загадывать, но надеюсь что достаточно долго. Стойкую к хабраэффекту площадку любезно предоставил тов. @drakmail, за что спасибо ему и команде Generate.Club.

MikroTik DNS Stop AD

ВНИМАНИЕ! Если вы ранее пользовались скриптом по ссылке выше, и у вас внезапно он перестал работать — знайте, причина в его обновлении. Первым делом попробуйте всё там же просто взять его обновленную редакцию, после этого всё должно успешно заработать. Приношу свои извинения за возможные неудобства!

Если после перехода на обновленную версию скрипта у вас появляются в логе микротика ошибки, содержащие текст: script error: failure: entry already exists, то рекомендую или ручками сперва снести все имеющиеся статические маршруты (оставив необходимые, разумеется), или выполнив в консоли /ip dns static remove [/ip dns static find];

Диклеймер: 1. Команда Generate.Club не имеет отношения к сервису. 2. Не хорошо допускать кого-либо к исполнению кода на твоих маршрутизаторах. Поэтому призываю пользоваться им исключительно в ознакомительных целях. Если всё нравится, сделай форк, настрой под себя да пользуйся на здоровье. За возможные перебои в работе, хабраэффект или ошибки ответственности никто не несет. 3. Я приложу все усилия, чтобы всё работало «как надо» максимально продолжительное время, но нужно понимать степень ответственности.

При обнаружении ошибок в работе сервиса или опечаток в тексте — пожалуйста, сообщайте об этом в личку. Заранее спасибо!

Бабахнуть комментарий

Комментарии

62 Комментариев

  1. Доброе время суток. Спасибо за скрипт. Пользовался предыдущей версией до закрытия сайта, потом с горем пополам запустил на своем НАСе. Но была проблема которую так и не смог побороть. И вот в очередном порыве исправления своей рукожопости наткнулся на новый сайт. Но что то рукожопость не отпускает. Копирую сгенерированный скрипт в терминал микротика, запускаю, он сначала выдает: status: connecting и через пару секунд status:failed. Где бы покопаться?
    Спасибо.

        • Да, что то я затупил, добавлял через терминал.

          Все заработало, только почему то не загружает больше чем 4103 записей, хотя в файле полученном по запросу написано: ## 27441 entries limited to 21000.

            • Не знаю в чем была проблема, помогла пресловутая перезагрузка :(

              И еще вопрос, у меня есть собственный НАС. Могу ли я использовать Ваш сайт stopad.kplus.pro в том виде как он отображается в личных целях. Хотелось бы чтоб зайдя на определенную страницу на своем НАСе видеть то же, что и на Вашем сайте. На НАСе есть возможность функционирования WEB сервера. Если можно, и Вам не сложно, подскажите, как это сделать. Можно по почте.

  2. Почему сайт megogo.net попал в список блокируемых?
    Выбрал только: Отключить рекламу на YouTube.com, Skype и пр.
    Расшифруйте «и пр.», может сделать без прочего?
    За сервис большое спасибо!

    • Помню что они меня достали навязчивостью своей рекламы на других сайтах.. Но всё же — их (включая marathonbet.com) из блокировки убрал. Вам достаточно обновить ваш скрипт, и всё будет хорошо :)

  3. Всем привет.
    Вот эти списки не подгружаются:
    http://stopad.generate.club/?sources=http%3A%2F%2Fgoo.gl%2FG4eXKK,http%3A%2F%2Fgoo.gl%2F8uCykg,http%3A%2F%2Fgoo.gl%2FR4czad,https%3A%2F%2Fgoo.gl%2FnYyJ3,https%3A%2F%2Fgoo.gl%2FBA1zmO,https%3A%2F%2Fgoo.gl%2FTDh4kn,http%3A%2F%2Fgoo.gl%2Fy3mxFt&format=routeros&version=0.1.0&redirect_to=127.0.0.2&exceptions=localhost

    • Повторюсь ещё раз:

      Если после перехода на обновленную версию скрипта у вас появляются в логе микротика ошибки, содержащие текст: script error: failure: entry already exists, то рекомендую или ручками сперва снести все имеющиеся статические маршруты (оставив необходимые, разумеется), или выполнив в консоли /ip dns static remove [/ip dns static find];

  4. На моем hAP lite пределом является ~5000 записей

    кстати если нужны тесты, то готов предложить x86
    переварит любые списки

  5. что то сломалось
    только 15 тыс при всех списках записывает
    вот строка
    http://stopad.generate.club/?sources=http%3A%2F%2Fgoo.gl%2FG4eXKK,http%3A%2F%2Fgoo.gl%2F1QmJ8D,http%3A%2F%2Fgoo.gl%2F8uCykg,http%3A%2F%2Fgoo.gl%2FcJHHzf,http%3A%2F%2Fgoo.gl%2Fjm09Xz,http%3A%2F%2Fgoo.gl%2FR4czad,http%3A%2F%2Fgoo.gl%2F80KoCb&format=routeros&version=0.1.0&exceptions=localhost,localhost.localdomain

    • Вы понимаете что многие списки — дублируются, и «сервис» все эти самые дубли очень нежно и аккуратно вырезает. В итоге получаем только самый сок и без повторений, разумеется. Если есть желание — проверьте ручками. Заодно скажете — на сколько моя теория оказалась верна.

      • не проблема
        берем список(67414 entries) по
        http://stopad.generate.club/?sources=http%3A%2F%2Fgoo.gl%2F8uCykg,http%3A%2F%2Fgoo.gl%2FcJHHzf,http%3A%2F%2Fgoo.gl%2Fjm09Xz,http%3A%2F%2Fgoo.gl%2FR4czad,http%3A%2F%2Fgoo.gl%2F80KoCb&format=routeros&version=0.1.0&exceptions=localhost,localhost.localdomain,r.mail.ru

        идем в списке в самый низ и копируем строку zz.zeroredirect1.com
        потом убираем ставил две галочки на
        Отключить рекламу на YouTube.com, Skype и пр.
        ~400 записей (adaway.org/hosts.txt)
        и формируем другой список
        http://stopad.generate.club/?sources=http%3A%2F%2Fgoo.gl%2F8uCykg,http%3A%2F%2Fgoo.gl%2FcJHHzf,http%3A%2F%2Fgoo.gl%2Fjm09Xz,http%3A%2F%2Fgoo.gl%2FR4czad,http%3A%2F%2Fgoo.gl%2F80KoCb&format=routeros&version=0.1.0&exceptions=localhost,localhost.localdomain,r.mail.ru
        ищем строку zz.zeroredirect1.com и не находим

          • пардон, вот что получается(15696 entries) если поставить все галки
            http://stopad.generate.club/?sources=http%3A%2F%2Fgoo.gl%2FG4eXKK,http%3A%2F%2Fgoo.gl%2F1QmJ8D,http%3A%2F%2Fgoo.gl%2F8uCykg,http%3A%2F%2Fgoo.gl%2FcJHHzf,http%3A%2F%2Fgoo.gl%2Fjm09Xz,http%3A%2F%2Fgoo.gl%2FR4czad,http%3A%2F%2Fgoo.gl%2F80KoCb&format=routeros&version=0.1.0&exceptions=localhost,localhost.localdomain,r.mail.ru

            если две верхнии убрать то ссылка из предыдущего поста(67414 entries)

            • zz.zeroredirect1.com содержится в списке по ссылке http://hosts-file.net/ad_servers.txt. В первом случае вы его подключаете — и zz.zeroredirect1.com соответственно есть. Во втором вы его отключаете — и его соответственно нет. Что тут работает не так?!

              ps. Пожалуйста, научитесь пользоваться кнопками форматирования комментариев. Выделил текст — нажал кнопочку. Попробуйте — это не сложно.

              • не верно,
                в обоих случаях я подключаю hosts-file.net/ad_servers.txt
                в этом то и косяк.

                я же говорю, что выбираю все источники и получаю на выходе(15696 строк, что само по себе странно так как в ad_servers.txt их 45000) отсутствие адреса zz.zeroredirect1.com как пример.

                потом я убираю(т.е. не использую) два верхних источника, а именно
                — рекламу на YouTube.com, Skype и пр.
                и
                — 400 записей (adaway.org/hosts.txt)
                и получаю на выходы нормальный список с 67414 строками.
                в котором есть адрес для примера zz.zeroredirect1.com

                по поводу форматирования не понял
                т.е. кнопок ни каких на странице не вижу,
                сам удивляюсь что посты нельзя редактировать.

                • Друже, ты издеваешься?

                  Твоя первая ссылка:
                  http://stopad.generate.club/?sources=http%3A%2F%2Fgoo.gl%2F8uCykg,http%3A%2F%2Fgoo.gl%2FcJHHzf,http%3A%2F%2Fgoo.gl%2Fjm09Xz,http%3A%2F%2Fgoo.gl%2FR4czad,http%3A%2F%2Fgoo.gl%2F80KoCb&format=routeros&version=0.1.0&exceptions=localhost,localhost.localdomain,r.mail.ru содержит 67414 записей, состоит из источников:

                  ## Hosts list sources:
                  ## > http://goo.gl/8uCykg (http://www.malwaredomainlist.com/hostslist/hosts.txt)
                  ## > http://goo.gl/cJHHzf (http://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts&showintro=0&mimetype=plaintext)
                  ## > http://goo.gl/jm09Xz (http://someonewhocares.org/hosts/hosts)
                  ## > http://goo.gl/R4czad (http://winhelp2002.mvps.org/hosts.txt)
                  ## > http://goo.gl/80KoCb (http://hosts-file.net/ad_servers.txt)

                  И содержит zz.zeroredirect1.com, который берется из http://hosts-file.net/ad_servers.txt.

                  Твоя вторая ссылка:
                  http://stopad.generate.club/?sources=http%3A%2F%2Fgoo.gl%2FG4eXKK,http%3A%2F%2Fgoo.gl%2F1QmJ8D,http%3A%2F%2Fgoo.gl%2F8uCykg,http%3A%2F%2Fgoo.gl%2FcJHHzf,http%3A%2F%2Fgoo.gl%2Fjm09Xz,http%3A%2F%2Fgoo.gl%2FR4czad,http%3A%2F%2Fgoo.gl%2F80KoCb&format=routeros&version=0.1.0&exceptions=localhost,localhost.localdomain,r.mail.ru содержит 15696 записей, состоит из источников:

                  ## Hosts list sources:
                  ## > http://goo.gl/G4eXKK (https://gist.githubusercontent.com/tarampampam/1da71e3f9deb5dda7b84/raw/3fbfd02f255854ff9dbbb744de84148e456b8249/hosts.block_shit.txt)
                  ## > http://goo.gl/1QmJ8D (http://adaway.org/hosts.txt)
                  ## > http://goo.gl/8uCykg (http://www.malwaredomainlist.com/hostslist/hosts.txt)
                  ## > http://goo.gl/cJHHzf (http://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts&showintro=0&mimetype=plaintext)
                  ## > http://goo.gl/jm09Xz (http://someonewhocares.org/hosts/hosts)

                  И НЕ СОДЕРЖИТ zz.zeroredirect1.com, потому как он брался из http://hosts-file.net/ad_servers.txt, который не указан и источниках списков.

                  Перепроверь всё ещё раз. Со своей стороны специально уже дважды всё перепроверил. Не испытывай терпение, пожалуйста.

                  ps. Чуть выше поля написания комментария есть черные кнопочки. Полужир, курсив, блок кода, вставка ссылки и пр. Речь именно о них.

                    • Ну разумеется же! Именно об этом и написано на странице:

                      Ограничения носят больше формальный характер, но всё таки они есть:

                      • Максимальное количество внешних источников — 5 (URL должен быть не более 255 символов);
                  • Ну разумеется же! Именно об этом и написано на странице:
                    Ограничения носят больше формальный характер, но всё таки они есть:
                    Максимальное количество внешних источников — 5 (URL должен быть не более 255 символов);

                    так в данном случае источники не внешние а штатные
                    т.е. нужно увеличить штатные до 7

    • Простите, но тут должен быть в меру раздраженный и преисполненный безысходностью возглас «Да бляяять!..». В общем — то что содержится в итоговом скрипте — зависит от того, какие источники вы выставите. «Сервис» ничего от себя не добавляет. Если желаете её убрать — просто добавьте в исключения, или не используйте тот источник, который её содержит. Вообще — да, смысла в ней особо-практического не наблюдаю.

  6. Я столкнулся с парой проблем, при добавлении всех записей (около 50000) роутер работает, доступ к днс записям невозможен — роутер уходит в 100% загрузку цп и отваливается днс. Но это пол беды. Основная проблема в том, что перезагрузка роутера приводит к тому же самому — роутер не выходит из ступора и днс не работает. До обновления скрипта такого не было, минут через 10-15-ть днс оживал, сейчас и через 30-ть минут не поднимается. Также если имеются самодобавленные днс записи скрипт на 58 записи выдаёт ошибку и завершает работу. Если нужна более детальная информация, смогу чуть позже дать.

    пысы: почта на сайте со скриптом не работает

    • На моем hAP lite пределом является ~5000 записей, о чем было сказано в теле поста. Всё что могу посоветовать — это из консоли грохнуть все статические маршруты, и указать лимит записей в настройках на странице со скриптом. Если после этого проблема сохранится — дайте знать, подумаем что можно сделать.

      ps. Почту поправил, большое спасибо!

  7. а свои источники работают ?
    добавляю
    http://malwaredomainlist.com/hostslist/hosts.txt
    http://someonewhocares.org/hosts/hosts
    но что то даже не одна запись не добавилась
    может их плюсанёте с основным ?

    • Странно, давайте взглянем на получившуюся ссылку: http://stopad.generate.club/?sources=http%3A%2F%2Fmalwaredomainlist.com%2Fhostslist%2Fhosts.txt,http%3A%2F%2Fsomeonewhocares.org%2Fhosts%2Fhosts&format=routeros&version=0.1.0&exceptions=localhost — всё более чем корректно обрабатывается. И, да — плюсанул их к основным, спасибо!

  8. а как быть с ошибкой failure: entry already exists ?

    ошибка вызывается если такая днс запись уже имеется
    но если руками через консоль днс прописывать например так:

    /ip dns static
    add address=127.0.0.1 name=validation.sls.microsoft.com
    add address=127.0.0.1 name=statsfe2.update.microsoft.com.akadns.net
    add address=127.0.0.1 name=statsfe2.update.microsoft.com.akadns.net
    add address=127.0.0.1 name=fe2.update.microsoft.com.akadns.net

    то ошибка не мешает все остальные записи дописать, просто происходит игнор повторов

    а скрипт при столкновении с повтором сразу останавливает работу с ошибкой

    Jan/10/2016 15:56:19 script,error script error: failure: entry already exists
    • Я бы вам рекомендовал или ручками для начала снести все имеющиеся статические маршруты (оставив необходимые, разумеется), или выполнив в консоли /ip dns static remove [/ip dns static find];

  9. Здравствуйте…
    Скрипт изумительно проработал несколько дней (128Mb на роутере) для понимания увеличения кол-ва записей поставил на каждый день — кстати растут потихонечку каждый день… и на тебе… перестали погружаться данные с hosts-file.net/ad_servers.txt — вот сама ссылка работает 46000 выдаёт а через скрипт http://stopad.generate.club/?sources=http%3A%2F%2Fhosts-file.net%2Fad_servers.txt — 000 ничего нет, а он у меня на трех роутера работал и бай с 57000 до 15000 за одну ночь…, а заметил только на вторую и архив уже затерся, а в hosts-file.net самые эффективные adblock’и. может подскажите как исправить?

    • Доброго времени суток!

      Всё дело в том, что вам необходимо просто обновить сам скрипт на маршрутизаторе. Всё что требуется — это перейти на «Главную страницу» и снять все галочки с «источников», указать в текстовом поле источников адрес http://hosts-file.net/ad_servers.txt, после чего скопировав текст обновленного скрипта — заменить им имеющийся.

      Всё должно успешно заработать! Успехов вам!

  10. и не забывайте увеличивать размер кеша днс, иначе не будут собираться динамические записи.
    т.е. по умолчанию стоит 2048 записей, а скриптом заливается более 50000

  11. Если указывать свои маршруты со знаками _ то они исключаются из строки.
    т.е. я указал 192.168.1.1 PS_MIKSERV а в маршрут прописалось 192.168.1.1 PSMIKSERV

    • Начиная с версии 0.1.0 нет необходимости указывать свои маршруты, они более не затрагиваются. Всё что вам необходимо сделать — это удалить все статические маршруты (кроме тех, что являются «вашими»), взять обновленную версию скрипта, и запустить. Успешного обновления!

  12. заработал, получилось, долго думал, почему добавил скрипт и ничего не происходит, надо было его запустить :) У меня другая проблема возникла — ccr-1009, записи ~110000 добавились и всё ок, но после перезагрузки отвалился днс на микротике, все записи исчезли, как по дефолту и изменить\сохранить не даёт (не реагирует на «ok», «apply»). Очевидно записей много, поэтому 2 вопроса: 1)сколько лимит записей поставить и 2) поднять днс сможет только полный резет?

  13. Здравствуйте! Выставляю все источники, вылетает dns на mikrotik. просто не появляются динамические сервера

    • Доброго времени суток! К сожалению, я не понимаю какие цели вы ставите, какие для этого предприняты действия, каков результат ожидался и какой был на самом деле

  14. Извините за мои ламерские вопросы не по теме — какую периодичность запуска скрипта задавать и что такое Лимит записей (Укажите максимальное количество возвращаемых записей)? Чем определяется, какое число указывать.

    • Периодичность — раз в неделю или две, думаю, более чем достаточно. Списки не так часто обновляются, как хотелось бы.
      Лимит можно вообще не выставлять, если Микротик будет «есть» полученный скрипт без проблем, и память его по итогу не будет забита под завязку. В противном случае необходимость лимита оправдана.