Jump to content
Калькуляторы

[tc htb] Дать разную скорость на разные сети

Доброго дня! Кто как решает задачу нарезки разной скорости абонентам на мир и "пиринговые сети"?

 

Если просто выделить сети в обход шейпера, то

 

iptables -t mangle -A PREROUTING -s a.b.c.d/xx -j MARK --set-mark 110

tc filter add dev eth0 parent 1: prio 1 protocol ip fw
tc filter add dev eth0 parent 1: prio 1 protocol ip handle 110 fw flowid 1:110

tc class add dev eth0 parent 1:1 classid 1:110 htb rate 1000mbit ceil 1000mbit burst 4096k 
tc qdisc add dev eth0 parent 1:110 sfw perturb 10

а хеш-таблицы клиентских фильтров идут ниже с prio2.

В этой схеме получаем нешейпируемый трафик на сети, маркированные в prerouting, скорость у клиента на скорости линка.

 

Задача нужно нарезать скорость для определенных сетей с линка конкретного оператора, тоже решается несложно.

eth2 - линк оператора, добавляем к командам выше

 

modprobe ifb numifbs=3
ip link set dev ifb2 up 
ifconfig ifb1 txqueuelen 10000 up 

tc qdisc add dev eth2 ingress
tc filter add dev eth2 parent ffff: protocol ip u32 match u32 0 0 action mirred egress redirect dev ifb2

дальше вешаем на ifb2 фильтры \ классы, но с указанием нужной скорости. Получаем раздельную нарезку скорости на мир и заданные сети, с индивидуальной настройкой под абонента.

 

 

А если не знаешь, через какого оператора будет маршрут на нужные сети, как тогда нарезать?

Например, зеркалировать в ifb маркированный трафик, но оно похоже так не умеет.

Share this post


Link to post
Share on other sites

Порекламирую модуль ipt-ratelimit

http://forum.nag.ru/forum/index.php?showtopic=108580

Вашу задачу решает без проблем, делаете две таблицы, одну вешаете на ipset до пиринга, другую просто на 0/0

:)

Share this post


Link to post
Share on other sites

Порекламирую модуль ipt-ratelimit

http://forum.nag.ru/forum/index.php?showtopic=108580

Вашу задачу решает без проблем, делаете две таблицы, одну вешаете на ipset до пиринга, другую просто на 0/0

:)

интересная штука, попробую!

Share this post


Link to post
Share on other sites

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.