LINUX.ORG.RU
ФорумAdmin

openwrt tc и ограничение для in\out per IP

 , , ,


0

1

Вобщем есть tl-3420 c 4мб Флеша. Задача: 1) сделать гостевую вайвайку (сделано) 2) нарезать скорость 128/128 кбит на каждый выданный ИП в этой сети. Думал вопрос тривиален, ан нет....может у кого есть скрипт tc под такое?



Последнее исправление: mak_v_ (всего исправлений: 1)

Таки задача не просто тривиальна, а как два пальца обоссать.

Клепаешь 253 класса htb на интерфейсе wlan, распихиваешь u32 классификатором айпишники по классам. Скорость каждому прописываешь 128.

Смыть, намылить, повторить на другом интерфейсе.

Ingress нирикаминдую, он тупо дропает весь трафик, не лезущий в полосу.

svr4
()
Ответ на: комментарий от mak_v_
#!/bin/bash

function make_htb() {
        IP="172.16.0."
        SPEED=128
        tc qdisc del dev $1 root >/dev/null 2>&1
        tc qdisc add dev $1 root handle 1: htb default 20
        tc class add dev $1 parent 1:1 classid 1:20 htb rate 100mbit burst 6k
        for i in {2..254}; do
                tc class add dev $1 parent 1:1 classid 1:${i} htb rate ${SPEED}kbit burst 6k
                tc filter add dev $1 protocol ip u32 match ip dst ${IP}${i} flowid 1:{$i}
        done
}

make_htb wlan0
svr4
()
Ответ на: комментарий от mak_v_

Вход также, только на входящем интерфейсе и dst на src заменить.

Алсо, я эту херню не проверял, ибо лень.

svr4
()
16 марта 2017 г.
Ответ на: комментарий от mak_v_

Не попадают пакетики в очередь. Может у кого есть готовый вариант?

mak_v_
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.