Скрипт для загрузки из файла и обновления /etc/hosts (статических соответствий имя-адрес в DNS)
Добавлено: 29 апр 2017, 19:54
Доброго времени суток!
Пользуюсь мобильным интернетом, часто меняю симки, далеко не на всех симках стоит запрет подписок.
В сети есть файл /etc/hosts, в котором перечислены все известные сайты с платными подписками и все они заворачиваются на специальный адрес (предупреждающий о том, что была возможность попасть на подписку) или просто на локалхост.
Есть желание прописывать все эти хосты в /etc/hosts на Микротике (в список статических адресов в разделе IP -> DNS -> Static).
Сейчас сделал это скриптом. Но в будущем файл будет обновляться. А тупой скрипт с кучей команд типа ip dns static> add name=www.example.com address=10.0.0.1 вылетает при попытке добавить уже имеющееся имя хоста.
Как бы сделать так, чтобы скрипт читал типовой файл формата hosts с комментариями и парами имя - адрес. Комментарии чтобы отбрасывал, а нормальные строчки проверял бы на присутствии в Микротике и в случае отсутствия, добавлял бы.
Иными словами:
Читаем строчку из файла, пока есть чего читать {
Если коммент - отбрасываем иначе - проверяем на наличие в списке ip - dns - static
если пара отсутсвует в ip - dns - static, то добавляем
}
Пожалуйста, подскажите, как это реализовать в виде нормального RouterOS скрипта
Заранее спасибо!
Пользуюсь мобильным интернетом, часто меняю симки, далеко не на всех симках стоит запрет подписок.
В сети есть файл /etc/hosts, в котором перечислены все известные сайты с платными подписками и все они заворачиваются на специальный адрес (предупреждающий о том, что была возможность попасть на подписку) или просто на локалхост.
Есть желание прописывать все эти хосты в /etc/hosts на Микротике (в список статических адресов в разделе IP -> DNS -> Static).
Сейчас сделал это скриптом. Но в будущем файл будет обновляться. А тупой скрипт с кучей команд типа ip dns static> add name=www.example.com address=10.0.0.1 вылетает при попытке добавить уже имеющееся имя хоста.
Как бы сделать так, чтобы скрипт читал типовой файл формата hosts с комментариями и парами имя - адрес. Комментарии чтобы отбрасывал, а нормальные строчки проверял бы на присутствии в Микротике и в случае отсутствия, добавлял бы.
Иными словами:
Читаем строчку из файла, пока есть чего читать {
Если коммент - отбрасываем иначе - проверяем на наличие в списке ip - dns - static
если пара отсутсвует в ip - dns - static, то добавляем
}
Пожалуйста, подскажите, как это реализовать в виде нормального RouterOS скрипта
Заранее спасибо!