# redirector Скрипт для: - резолва доменов (с разных DNS) - объединения IP / CIDR - генерации routing-скрипта для policy routing --- ## Установка ```bash git clone https://git.pikusone.ru/pikus/redirector.git && cd redirector ``` ```bash python3 -m venv venv source venv/bin/activate pip install -r requirements.txt ```` --- ## Конфиг `config.ini` ```ini [redirector] threads = # Количество потоков для dns-резолва (50) filename = # Имя файла в котором списки ip, cidr и доменов (input.txt) script = # Имя готового скрипта (apply_routing.sh) rollback_script = # Имя скрипта для отката изменений (rollback_routing.sh) exclude_cloudflare = # Исключить адреса CloudFlare (yes, no) gateway = # IP шлюза на который направлять адреса (10.10.0.1) table = # Номер таблицы маршрутизации (1010) run = # Shell команда которая выполнится после отработки скрипта (echo "lol kek") ``` --- ## Входной файл `input.txt` Поддерживает: ``` # комментарий google.com 1.1.1.1 8.8.8.0/24 example.org ``` --- ## Запуск ```bash venv/bin/python redirector.py ``` или ```bash python redirector.py ``` --- ## Результат ### ON скрипт ``` apply_routing.sh ``` Добавляет таблицу (если её нет) и маршруты в таблицу. ### OFF скрипт (rollback) ``` rollback_routing.sh ``` Удаляет: * все маршруты * правило policy routing --- ## Как использовать ### Включить: ```bash ./forced_vpn_ON.sh ``` ### Выключить: ```bash ./forced_vpn_OFF.sh ```