Jump to content

Question

Posted (edited)

У меня есть около 15к маршрутов, которые я бы хотел повесить на определенный интерфейс. 
Через веб-интерфейс, такое количество маршрутов просто не загружается. Смог максимум загрузить около 4к. 
Если добавить через startup-config, роутер не поднимается и не отвечает после перезагрузки до полного сброса настроек(синтаксис соблюдаю).
Возможно ли решить мою задачу с помощью роутера Keenetic? Возможно какие-то дополнительные пакеты из opkg смогли бы мне помочь сделать это.

UPD:
Все же прописать 15 тысяч маршрутов(На 45кк ip) в консоли через opkg возможно. Сделать это можно без труда, все вроде как работает, интернет не тупит, скорость не режет, пинг нормальный. Ресурсов у роутера еще вагон, и все бы хорошо - @reboot  sh script.sh через cron и все бы работало. Но веб интерфейс ужасно тупит, даже на домашнюю страницу прогрузить не в состоянии с таким кол-вом маршрутов. Во что он упирается, я так и не понял. Видимо скрипты запрашивают постоянно данные о состоянии роутера, и каждый раз при запросе маршрутов веб роутера падает в таймауты вместе со скриптами. 

Edited by Patch17

2 answers to this question

Recommended Posts

  • 0
Posted
3 часа назад, Patch17 сказал:

У меня есть около 15к маршрутов, которые я бы хотел повесить на определенный интерфейс. 
Через веб-интерфейс, такое количество маршрутов просто не загружается. Смог максимум загрузить около 4к. 
Если добавить через startup-config, роутер не поднимается и не отвечает после перезагрузки до полного сброса настроек(синтаксис соблюдаю).
Возможно ли решить мою задачу с помощью роутера Keenetic? Возможно какие-то дополнительные пакеты из opkg смогли бы мне помочь сделать это.

bird4static поставьте и попробуйте через него маршруты прописать на интерфейс.

  • 0
Posted (edited)
18 hours ago, PASPARTU said:

bird4static поставьте и попробуйте через него маршруты прописать на интерфейс.


Не хотелось бы использовать без особой надобности сторонние скрипты. 
Список cidr адресов я генерирую и преобразую в нужный мне формат собственными скриптами. И вопрос в том как их маршрутизировать без добавления каждой подсети через ip route, т.к интерфейс роутера перестает мне отвечать частично. 
Скорее всего нужно использовать, как в bird4static судя по скриптам, ip rule с таблицами. И маршрутизировать уже их. Ищу как сделать это корректно. 

UPD: 

Нашел на Github, пример достаточно лаконичного решения, взял его за основу. Вроде как решено. 
https://github.com/rustrict/keenetic-traffic-via-vpn

Решение которые я использовал у себя.

echo "Adds a routing rule that redirects traffic entering through interface br0 to routing table 1000 with priority 1995."
ip rule add iif br0 table 1000 priority 1995 2>/dev/null

echo "Create routes in the table, for each subnet from the file /opt/root/region.txt"
while read cidr; do
    ip route add table 1000 $cidr dev nwg0 2>/dev/null
done < /opt/root/region.txt

echo "The creation of routes is completed."


Можно добавить в крон через sleep после запуска , например так:  

@reboot sleep 60 && sh /opt/unblock/route_start.sh
Edited by Patch17
Добавил решение
  • Thanks 1

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

This site uses cookies. By clicking "I accept" or continuing to browse the site, you authorize their use in accordance with the Privacy Policy.