Перейти к содержимому
Калькуляторы

ipt-ratelimit трафик полисинг в iptables

Всем большое спасибо! Особенно уважаемому sol

Благодаря его помощи в личке все получилось.

Вот конфиг (упрощенный по кол-ву подсетей т.к. их реально много) Поэтому наверное последую совету и буду смотреть в сторону ipset

 

$IPTABLES -N ZONE1-IN
$IPTABLES -N ZONE1-OUT
$IPTABLES -N LOCAL-IN
$IPTABLES -N LOCAL-OUT
#ZONE1-IN
$IPTABLES -A FORWARD -d xx.xx.xx.0/19 -j ZONE1-IN
$IPTABLES -A FORWARD -d xxx.xxx.xxx.xx/20 -j ZONE1-IN
#LOCAL-IN
$IPTABLES -A FORWARD -d xxx.xx.xx.xx/19 -j LOCAL-IN
$IPTABLES -A FORWARD -d xx.xx.xxx.xx/22 -j LOCAL-IN
#ZONE1-OUT
$IPTABLES -A FORWARD -s xx.xx.xx.0/19 -j ZONE1-OUT
$IPTABLES -A FORWARD -s xxx.xxx.xxx.xx/20 -j ZONE1-OUT
#LOCAL-OUT
$IPTABLES -A FORWARD -s xxx.xx.xx.xx/19 -j LOCAL-OUT
$IPTABLES -A FORWARD -s xx.xx.xxx.xx/22 -j LOCAL-OUT
#SHAPE
$IPTABLES -A KG-IN -m ratelimit --ratelimit-set zone1-out --ratelimit-mode src -j DROP
$IPTABLES -A KG-OUT -m ratelimit --ratelimit-set zone1-in --ratelimit-mode dst -j DROP
$IPTABLES -A LOCAL-IN -m ratelimit --ratelimit-set local-out --ratelimit-mode src -j DROP
$IPTABLES -A LOCAL-OUT -m ratelimit --ratelimit-set local-in --ratelimit-mode dst -j DROP
$IPTABLES -A FORWARD -m ratelimit --ratelimit-set world-out --ratelimit-mode src -j DROP
$IPTABLES -A FORWARD -m ratelimit --ratelimit-set world-in --ratelimit-mode dst -j DROP
$IPTABLES -A ZONE1-IN -j ACCEPT
$IPTABLES -A ZONE1-OUT -j ACCEPT
$IPTABLES -A LOCAL-IN -j ACCEPT
$IPTABLES -A LOCAL-OUT -j ACCEPT

Изменено пользователем Sacrament

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Хороший полисер.

Очень нравится "человеческое лицо".

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Хороший полисер.

Очень нравится "человеческое лицо".

Как по мне - это вообще первый полисер в линукс

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А как подвигается, позволю напомнить, работа над воплощением полисинга над подсетями? Мы по /29 private клиентам выдаём, например.

IPv6 в планах есть?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Как по мне - это вообще первый полисер в линукс

Ну тут я не соглашусь. Полисинг там был давно. tc в помощь.

А как подвигается, позволю напомнить, работа над воплощением полисинга над подсетями? Мы по /29 private клиентам выдаём, например.

IPv6 в планах есть?

Присоеденяюсь к вопросу.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Как по мне - это вообще первый полисер в линукс

tc в помощь.

 

Окей, я перефразирую, полисинг который более дружественный к настройке чем в tc

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А как подвигается, позволю напомнить, работа над воплощением полисинга над подсетями? Мы по /29 private клиентам выдаём, например.

IPv6 в планах есть?

 

На сколько я помню, рабочие часы на эту часть девелопмента не были оплачены, а "само по себе" все ползет довольно медленно.

Желающие ускорить, могут связаться с автором и внести посильный вклад.

 

p.s. ipv6 был в далекой перспективе.

 

jfi

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

На сколько я помню, рабочие часы на эту часть девелопмента не были оплачены

Что то я не припомню о коммерческой составляющей этого проэкта, или автор обещял плюшки за доп плату где то тут?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

На сколько я помню, рабочие часы на эту часть девелопмента не были оплачены

Что то я не припомню о коммерческой составляющей этого проэкта, или автор обещял плюшки за доп плату где то тут?

 

Я инсайдер и в курсе всех скрытых подробностей появления ratelimit/netflow модулей.

Этот модуль вообще появился только потому, что автору были предоплачены часы работы (20 часов afair), причем даже без гарантий что что-то получится на выходе. Изначально нужно было выяснить как это реализовать под большую нагрузку и при этом сделать удобным для isp. То что код публичный, так это позиция автора. На данный момент все оплаченное время закончилось. А своим предыдущим постом, я лишь озвучил реальную возможность ускорить появление новых фич.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Очень интересно, думаю если возможны коммерческие доработки - можно было бы озвучить. Я например новый проект на этом модуле собираюсь строить

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Очень интересно, думаю если возможны коммерческие доработки - можно было бы озвучить. Я например новый проект на этом модуле собираюсь строить

 

думаю стоит формализовать требуемые доработки и обсуждать по емайлу из файла README.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

желаю автору модулей побольше предоплаченных часов.... :-)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Прошу прощения, а Вы не пробовали свой модуль пропихнуть в апстрим, через тот же xtables-addons?

 

Я уверен ваш модуль будет востребован

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Прошу прощения, а Вы не пробовали свой модуль пропихнуть в апстрим, через тот же xtables-addons?

 

Я уверен ваш модуль будет востребован

 

Очень давно была попытка договориться с майнтейнерами netfilter пропихнуть ipt_netflow, обсуждение растянулось на пару недель. Тот кто активно занимался майнтейнерством в этот момент параллельно делал ulog2, другой агрументировал что все что сделано не через conntrack не верно. Слушать о том что сделано без conntrack именно для скорости они не захотели. Делать тесты и что-то доказывать не захотели мы.

Кому все это может потребоваться, соберут модуль и самостоятельно. )

Я где-то уже описывал всю эту эпопею... нашел https://habrahabr.ru/sandbox/21426/

Если кто-то захочет проявить красноречие и вести переговоры, то может себя проявить.

Это будет уже 3я попытка. )

 

А что косается ratelimit, так он по сути еще не доделан и тащить его в таком вот виде как он есть сейчас, смысла большого нет.

 

p.s. К примеру я изначально хотел маски и абстрактные идентификаторы для биллинга (я не заказчик). Но так как это усложняет код, то на первом этапе было сделано упрощение, а второго этапа пока не наступило.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Прошу прощения, а Вы не пробовали свой модуль пропихнуть в апстрим, через тот же xtables-addons?

 

Я уверен ваш модуль будет востребован

 

Очень давно была попытка договориться с майнтейнерами netfilter пропихнуть ipt_netflow, обсуждение растянулось на пару недель. Тот кто активно занимался майнтейнерством в этот момент параллельно делал ulog2, другой агрументировал что все что сделано не через conntrack не верно. Слушать о том что сделано без conntrack именно для скорости они не захотели. Делать тесты и что-то доказывать не захотели мы.

Кому все это может потребоваться, соберут модуль и самостоятельно. )

Я где-то уже описывал всю эту эпопею... нашел https://habrahabr.ru/sandbox/21426/

Если кто-то захочет проявить красноречие и вести переговоры, то может себя проявить.

Это будет уже 3я попытка. )

 

А что косается ratelimit, так он по сути еще не доделан и тащить его в таком вот виде как он есть сейчас, смысла большого нет.

 

p.s. К примеру я изначально хотел маски и абстрактные идентификаторы для биллинга (я не заказчик). Но так как это усложняет код, то на первом этапе было сделано упрощение, а второго этапа пока не наступило.

 

Да я читал эту эпопею, если память не подводит, ipset тоже живет отдельным проектом из-за упоротости некоторых ответственных ментейнеров, думал, со временем что-то поменялось...

 

А вопрос к автору, был больше на будущее, хотя, если там все по прежнему с приемкой патчей, то можно даже не пытаться.

 

Отходя от темы, читая на забугорных сайтах рассказы людей, как они пытались что-то пропихнуть в апстрим, сложилось мнение, что там "кумовство и взяточничество" помноженное на невменяемость и завышенное ЧСВ ментейнеров.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

ipset тоже живет отдельным проектом из-за упоротости некоторых ответственных ментейнеров, думал, со временем что-то поменялось...

Вроде как включили, могу ошибаться.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

ipset долго жил отдельно, но пару лет уже как в ядре.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

будет ли поддержка для ip6?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А что косается ratelimit, так он по сути еще не доделан и тащить его в таком вот виде как он есть сейчас, смысла большого нет.

правок в код смотрю давно не было.

 

Кто реально использует? Стабильно на трафике >=5Гбит?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Кто реально использует? Стабильно на трафике >=5Гбит?

Тему полистайте. Вроде народ и на большем трафике использовал реально.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Кто реально использует? Стабильно на трафике >=5Гбит?

Используем. Несколько серверов по 7-8 гбит. Стабильно :)

 

правок в код смотрю давно не было.

Я очень сильно подозреваю что самому автору модуль не нужен, а задачи заказчика - полностью закрыты. Потому и правок нет :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Я очень сильно подозреваю что самому автору модуль не нужен, а задачи заказчика - полностью закрыты. Потому и правок нет :)

 

К сожалению так и есть

 

Я инсайдер и в курсе всех скрытых подробностей появления ratelimit/netflow модулей.

Этот модуль вообще появился только потому, что автору были предоплачены часы работы (20 часов afair), причем даже без гарантий что что-то получится на выходе. Изначально нужно было выяснить как это реализовать под большую нагрузку и при этом сделать удобным для isp. То что код публичный, так это позиция автора. На данный момент все оплаченное время закончилось.

 

А очень жаль.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Не спешите хоронить, ничего не умерло. Правок нет, так как совершенство достигнуто.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Не спешите хоронить, ничего не умерло. Правок нет, так как совершенство достигнуто.

Элементарно - портирование на свежие вресии ядра.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Не спешите хоронить, ничего не умерло. Правок нет, так как совершенство достигнуто.

Элементарно - портирование на свежие вресии ядра.

 

Что это значит?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.