programm). На роутере есть второй туннель — к PFsense с подсетью 10.10.30.0/24. Конфликт маршрутов: трафик ноутбука в локальную сеть уходит не туда. Решение — заставить роутер отправлять пакеты от конкретного IP (ноутбука) через нужный интерфейс. Для этого нужен Policy‑Based Routing.
Веб‑морда Keenetic отлично подходит для 95% сценариев: статические маршруты, политики Multi‑WAN, проброс портов. Но логика «если источник — IP 172.16.88.50, то для подсети 10.10.30.0/24 используй интерфейс dlyaudalenki» требует работы с несколькими таблицами маршрутизации и правилами (RPDB). Это уровень опытного администратора, поэтому в интерфейс такую гибкость не закладывают.
В основе Keenetic — Linux. Маршрутизация строится на трёх китах:
main.ip rule) — диспетчер: «для пакетов с признаком X используй таблицу Y».# Стандартный маршрут в main
10.10.30.0/24 via 172.16.88.1 dev wg1 # весь трафик уходит на PFsense
# Правило: пакеты с источника 172.16.88.50 смотрят в таблицу 100
ip rule add from 172.16.88.50 lookup 100
# Таблица 100 содержит обходной путь
ip route add 10.10.30.0/24 dev dlyaudalenki table 100
Именно это и нужно: пакеты от ноутбука (172.16.88.50) к 10.10.30.0/24 направлять не на шлюз PFsense, а через интерфейс dlyaudalenki. Обычный статический маршрут здесь не поможет — он конфликтует с основным. Выход — разделение на уровне правил.
Подключаемся по SSH и выполняем:
# 1. Создаём отдельную таблицу маршрутизации (число 100, можно другое)
ip route add 10.10.30.0/24 dev dlyaudalenki table 100
# 2. Добавляем правило: если источник — IP ноутбука (172.16.88.50), смотрим таблицу 100
ip rule add from 172.16.88.50 lookup 100
# 3. Проверяем
ip route show table 100
ip rule show
Важно: после перезагрузки правила исчезнут. Для автоматизации можно использовать /opt/etc/ndm/startup.sh (если есть Entware) или /etc/rc.local.
Вот фрагмент списка компонентов из веб‑интерфейса Keenetic:
И это абсолютно нормально, потому что:
Entware установится автоматически после подключения USB и включения "Поддержки открытых пакетов". Проверить можно через SSH:
opkg list
Подключитесь по SSH к роутеру и выполните команды (взято из официальной документации пакета):
# Добавляем репозиторий keen-pbr
mkdir -p /opt/etc/opkg
echo "src/gz keen-pbr https://maksimkurb.github.io/keen-pbr" > /opt/etc/opkg/keen-pbr.conf
# Обновляем списки пакетов
opkg update
# Устанавливаем зависимости (если ещё не установлены)
opkg install ca-certificates wget-ssl
opkg remove wget-nossl
# Устанавливаем keen-pbr
opkg install keen-pbr
После установки отредактируйте файл /opt/etc/keen-pbr/keen-pbr.conf. Укажите интерфейс, через который должен идти трафик (например, dlyaudalenki), и в списке local.lst пропишите IP вашего ноутбука (172.16.88.50). Подробности — в документации пакета.
| Метод | Сложность | Гибкость | Постоянство | Примечание |
|---|---|---|---|---|
| Чистый CLI (ip rule) | Средняя | 🔥 Полная | Требует скриптов | Подходит для разовых экспериментов |
| keen‑pbr | Выше (Entware) | 🔥🔥 Огромная (домены, списки) | Автоматически | Удобно для постоянной сложной маршрутизации |
| AntiKeen | Низкая | 📋 Только статика | Загрузка файла | Только статические маршруты (не для PBR) |
| Веб‑интерфейс | Очень низкая | ❌ | Да | Только базовые сценарии |
ip rule в CLI (они работают сразу).«Иногда, чтобы трафик пошёл туда, куда нужно, приходится заглядывать под капот. CLI и Entware открывают дверь в мир настоящей маршрутизации».
Комментарии
Пока нет комментариев. Будьте первым!