Добрый день. Сори, что пишу в старую тему, случайно нашёл этот тред, тот набор ansible-скриптов писал я
Скрипты ansible нужно запускать на вашей собственной машине (под Linux или WSL). Ваша машина сама подключится по SSH к роутеру и всё там настроит, ставить python на роутер не нужно. Идея Ansible в том, чтобы хранить конфигурацию "как код" для последующего воспроизведения. Это удобно, если у вас есть сотня роутеров Keenetic и вы хотите одной командой поставить этот скрипт сразу на все эти роутеры.
Я заархивировал этот репозиторий https://github.com/maksimkurb/ansible-keenetic-domain-routing, т.к. сам больше не пользуюсь данной конфигурацией, т.к. её сложно поддерживать и обновлять.
На его замену я запаковал подобную конфигурацию в OPKG-пакет, который можно установить на роутер. Пакет содержит утилиту для скачивания и обработки списков, а также набор скриптов для простановки fwmark пакетам и создания правил маршрутизации (на подобие тому, что было в ansible-keenetic-domain-routing). Скрипты для маршрутизации написаны на BASH, чтобы их можно было поменять под себя, а утилита для обработки списков на GoLang для быстродействия (сейчас списки из 27000 ip и подсетей, а также 43000 доменов импортируются в ipset и dnsmasq за 7 секунд на моём Keenetic Viva).
Одно из отличий от старого ansible-скрипта в том, что домены резолвятся не в момент импорта списка, а в момент DNS-запросов от клиентов локальной сети (через dnsmasq).
Если будете этим пользоваться, дополнительно рекомендую настроить dnscrypt-proxy2 и указать у dnsmasq его как upstream-сервер вместо гугловского 8.8.8.8 по умолчанию.