Jump to content

PBR в linux, как обойти ограничение по количеству таблиц маршрутизации ?


Recommended Posts

Posted

Всем привет.

 

Столкнулся с потенциальной проблемой масштабирования PBR в linux. Обще известное решение выглядит примерно так: пишем ip rule которое матчит, например, сорс ойпи пакета и в качестве экшн направляется в какую-то таблицу маршрутизации посмотреть default gw или что там еще будет. Вроде бы ничего другого кроме таблицы там указать-то и нельзя. Таблиц в ядре очень много (https://serverfault.com/questions/315705/how-many-custom-route-tables-can-i-have-on-linux) но iprouter2 по каким-то причинам имеет доступ только от 0до 255 (реально от 1 до 252), остальные 2^30  недоступны. Предполагаю это пространство зарезервировано под namespace или что-то другое. В общем, надо иметь возможность сделать больше чем 255 ПБР и всё.

 

Вопрос: что можно сделать, если мне понадобится сконфигурировать более 255 политик ? Есть ли другие хорошо поддерживаемые способы делать PBR  в линукс ?

 

P.S.  Если я правильно помню, то у цыско в роут-мап тоже существует ограничение на 256 записей :-), но это не точно. Типа "если тебе нужно больше, то у тебя неправильный дизайн сети" (с) цыско. Но в данном случае дизайн никогоне интересует, надо чтобы работало и чтобы не было предела в 255 ПБР политик, ну хотя бы на порядок больше хочется :-), 255 это как-то не серьёзно в 2019 году.

Posted
Quote

 It seems that the only valid values should be 0-255 plus the names defined in /etc/iproute2/rt_tables

А вы ваши таблицы прописали в /etc/iproute2/rt_tables (и ID для них)? Использую у себя автодобавление таблиц туда со случайно генерируемым ID, они получаются очень большими (например 353283, 275972), принимаются без проблем.

Posted
14 minutes ago, h3ll1 said:

:)

PBR Eто не ликукс!!!!

 

Вы имеете ввиду, что в линуксе RBR? :)

 

Можно еще раскидать рулесы по namespace'м, в каждом из которых по 256 правил и таблиц. :)

Posted
20 hours ago, rm_ said:

А вы ваши таблицы прописали в /etc/iproute2/rt_tables (и ID для них)? Использую у себя автодобавление таблиц туда со случайно генерируемым ID, они получаются очень большими (например 353283, 275972), принимаются без проблем.

Спасибо, вроде бы работает, если в /etc/iproute2/rt_tables прописать тыщу таблиц. По крайней мере добавлять и потом смотреть получилось, дальше пока не тестировал :-).

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   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.

×
×
  • Create New...