пробую реализовать такую схему:
это фрагмент скрипта ppp-up для pptp
$TC qdisc del dev $INTERFACE root
$TC qdisc add dev $INTERFACE root handle 1: htb default 1
$TC class add dev $INTERFACE parent 1: classid 1:1 htb prio 10 rate ${SPEED_1}kbit ceil ${SPEED_2}kbit burst 15k
$TC qdisc add dev $INTERFACE parent 1:1 handle 10: prio
$TC qdisc add dev $INTERFACE parent 10:1 handle 101 sfq
$TC qdisc add dev $INTERFACE parent 10:2 handle 102 sfq
$TC qdisc add dev $INTERFACE parent 10:3 handle 103 sfq
$TC filter add dev $INTERFACE parent 1: protocol ip prio 10 u32 match u32 0 0 flowid 1:1 action ipt -j MARK --set-mark $NET
в скрипте iptables
$IPTABLES -A POSTROUTING -t mangle -o ppp+ -j IMQ --todev 0
навешивание классов на imq0
ip link set dev imq0 up
tc qdisc add dev imq0 root handle 1: htb default 100
tc class add dev imq0 parent 1: classid 1:1 htb rate ${RATE_ALL}kbit burst 15k
tc class add dev imq0 parent 1:1 classid 1:100 htb prio 7 rate 128kbit ceil ${RATE_ALL}kbit burst 15k
tc qdisc add dev imq0 parent 1:100 handle 100: sfq perturb 10
tc class add dev imq0 parent 1:1 classid 1:5 htb prio 0 rate 128kbit ceil ${RATE_ALL}kbit burst 15k
tc qdisc add dev imq0 parent 1:5 handle 5: sfq
tc class add dev imq0 parent 1:1 classid 1:20 htb prio ${CLASS_20_PRIO} rate ${CLASS_20_MIN}kbit ceil ${CLASS_20_MAX}kbit burst 15k
tc class add dev imq0 parent 1:1 classid 1:30 htb prio ${CLASS_30_PRIO} rate ${CLASS_30_MIN}kbit ceil ${CLASS_30_MAX}kbit burst 15k
tc class add dev imq0 parent 1:1 classid 1:40 htb prio ${CLASS_40_PRIO} rate ${CLASS_40_MIN}kbit ceil ${CLASS_40_MAX}kbit burst 15k
tc class add dev imq0 parent 1:1 classid 1:50 htb prio ${CLASS_50_PRIO} rate ${CLASS_50_MIN}kbit ceil ${CLASS_50_MAX}kbit burst 15k
tc qdisc add dev imq0 parent 1:20 handle 20: tbf rate ${CLASS_20_MAX}kbit latency 50ms burst 1540
tc qdisc add dev imq0 parent 1:30 handle 30: tbf rate ${CLASS_30_MAX}kbit latency 50ms burst 1540
tc qdisc add dev imq0 parent 1:40 handle 40: tbf rate ${CLASS_40_MAX}kbit latency 50ms burst 1540
tc qdisc add dev imq0 parent 1:50 handle 50: tbf rate ${CLASS_50_MAX}kbit latency 50ms burst 1540
tc qdisc add dev imq0 parent 20:1 handle 200: prio
tc qdisc add dev imq0 parent 200:1 handle 201: sfq
tc qdisc add dev imq0 parent 200:2 handle 202: sfq
tc qdisc add dev imq0 parent 200:3 handle 203: sfq
tc qdisc add dev imq0 parent 30:1 handle 300: prio
tc qdisc add dev imq0 parent 300:1 handle 301: sfq
tc qdisc add dev imq0 parent 300:2 handle 302: sfq
tc qdisc add dev imq0 parent 300:3 handle 303: sfq
tc qdisc add dev imq0 parent 40:1 handle 400: prio
tc qdisc add dev imq0 parent 400:1 handle 401: sfq
tc qdisc add dev imq0 parent 400:2 handle 402: sfq
tc qdisc add dev imq0 parent 400:3 handle 403: sfq
tc qdisc add dev imq0 parent 50:1 handle 500: prio
tc qdisc add dev imq0 parent 500:1 handle 501: sfq
tc qdisc add dev imq0 parent 500:2 handle 502: sfq
tc qdisc add dev imq0 parent 500:3 handle 503: sfq
tc filter add dev imq0 protocol ip parent 1:0 prio 5 handle 3 fw flowid 1:20
tc filter add dev imq0 protocol ip parent 1:0 prio 5 handle 10 fw flowid 1:20
tc filter add dev imq0 protocol ip parent 1:0 prio 5 handle 5 fw flowid 1:30
tc filter add dev imq0 protocol ip parent 1:0 prio 5 handle 6 fw flowid 1:40
tc filter add dev imq0 protocol ip parent 1:0 prio 5 handle 9 fw flowid 1:40
tc filter add dev imq0 protocol ip parent 1:0 prio 5 handle 7 fw flowid 1:50
tc filter add dev imq0 protocol ip parent 1:0 prio 5 handle 8 fw flowid 1:50
в ресультате всего этого пакеты на imq0 попадают, но все идет на default (100) класс. Такое впечатление, что маркирование отрабатывает уже после $IPTABLES -A POSTROUTING -t mangle -o ppp+ -j IMQ --todev 0. В чем ошибка?
Вариант с маркированием пакетов через iptables работает, но при слете соединения остается правило. Номер маркера определяется тарифным планом клиента. Пакеты начинают маркироваться не тем маркером и клиент идет не в свою полосу. Приходится удалять правило руками. Согласитель, что для сервера доступа это мягко говоря не очень удобно.
Ответ на:
комментарий
от VitalkaDrug
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Шейпинг трафика Vlan (2014)
- Форум [tc][htb] два варианта реализации, но ни один не работает так, как нужно (2011)
- Форум Проблема с ограничением пропускной способности (htb.init и tc) (2006)
- Форум TC, HTB, ESFQ: вопрос по приоритетам (2006)
- Форум tc и eth (2009)
- Форум tc htb + хэш таблицы (2018)
- Форум смысл команд (2006)
- Форум [Не бейте лихом] Помогите разобратся с правилами QoS... (2008)
- Форум Сверхкриво работает приоритизация tc (2010)
- Форум HTB+samba (2007)