This commit is contained in:
Silver Ghost 2024-08-01 12:29:28 +03:00
parent 79ac108db8
commit 54b4b5925d
No known key found for this signature in database

63
Readme.md Normal file
View File

@ -0,0 +1,63 @@
Этот скрипт предназначен для добавления статических маршрутов на роутер Keenetic с использованием нотации CIDR. Он загружает список CIDR-блоков из указанного URL, объединяет их с заранее определенным списком пользовательских CIDR-блоков и добавляет их в таблицу маршрутизации роутера. Скрипт использует базовую аутентификацию для безопасного доступа к роутеру.
## Требования
* Python 3.x
* Библиотеки urllib и base64 (входят в стандартную библиотеку)
* Переменные окружения для настройки
## Переменные окружения
Перед запуском скрипта убедитесь, что установлены следующие переменные окружения:
* KEENETIC_USERNAME: Имя пользователя для роутера Keenetic (по умолчанию: admin)
* KEENETIC_PASSWORD: Пароль для роутера Keenetic (обязательно)
* KEENETIC_HOST: IP-адрес роутера Keenetic (по умолчанию: 192.168.0.1)
* KEENETIC_INTERFACE: Сетевая интерфейс для использования (по умолчанию: Proxy0)
## Пользовательский список CIDR
Скрипт включает заранее определенный список CIDR-блоков для YouTube. Вы можете изменить этот список в переменной CUSTOM_CIDR_LIST.
```python
CUSTOM_CIDR_LIST = [
"64.18.0.0/20",
"64.233.160.0/19",
"66.102.0.0/20",
"66.249.80.0/20",
"72.14.192.0/18",
"74.125.0.0/16",
"173.194.0.0/16",
"207.126.144.0/20",
"209.85.128.0/17",
"216.58.208.0/20",
"216.239.32.0/19",
"213.0.0.0/8",
]
```
## Функции
* cidr_to_netmask(cidr): Преобразует нотацию CIDR в маску подсети.
* fetch_cidr_list(url): Загружает список CIDR-блоков из указанного URL.
* add_route_to_keenetic(ip, netmask, gateway, username, password): Добавляет маршрут на роутер Keenetic.
* add_routes_to_keenetic(routes, gateway, username, password, max_retries=3): Добавляет несколько маршрутов с логикой повторных попыток.
* main(): Основная функция, которая управляет загрузкой и добавлением маршрутов.
## Использование
Чтобы запустить скрипт, выполните следующую команду в терминале:
```bash
python3 update_routes.py
```
## Пример
Чтобы использовать скрипт, установите необходимые переменные окружения и запустите его. Скрипт выведет статус добавления каждого маршрута:
```text
Маршрут 64.18.0.0 с маской 255.255.240.0 успешно добавлен.
Маршрут 64.233.160.0 с маской 255.255.224.0 успешно добавлен.
...
```