2.1 KiB
2.1 KiB
Redirector
Скрипт для:
- резолва доменов (с разных DNS)
- объединения IP / CIDR
- генерации routing-скрипта для policy routing
Установка
git clone https://git.pikusone.ru/pikus/redirector.git && cd redirector
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
Конфиг
cp config.ini.example config.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)
interface = # Интерфейс на который направлять адреса (awg0)
table = # Номер таблицы маршрутизации (1010)
run = # Shell команда которая выполнится после отработки скрипта (echo "lol kek")
Входной файл
input.txt
Поддерживает:
# комментарий
google.com
1.1.1.1
8.8.8.0/24
example.org
Запуск
venv/bin/python redirector.py
или
python redirector.py
Результат
ON скрипт
apply_routing.sh
Добавляет таблицу (если её нет) и маршруты в таблицу.
OFF скрипт (rollback)
rollback_routing.sh
Удаляет:
- все маршруты
- правило policy routing
Как использовать
Включить:
./forced_vpn_ON.sh
Выключить:
./forced_vpn_OFF.sh