Не работает шейпер ipfw pipe
Добавлено: 2012-10-05 13:53:27
Сетевка rl1 подключена к роутеру который по l2tp подключается к провайдеру, а от сетевки rl0 мы будем подключать компы на которые режем скорость.
Начну то что работает. Создаем таблицу в фаерволе ipfw в которой у нас будут разрешенные пользователи.
Затем добавим в эту таблицу пользователей которых мы блокировать не будем. Для примера добавим один ip
Если добавить в таблицу не блочит удаляем пользователя из нее работает блокировка.
Теперь к тому что не работает.
Режем скорость согласно тарифному плану:
Для каждого тарифного плана создадим 2 pipe с требуемой скоростью, один на вход, другой на выход, и укажем у входящего dst-mask 0xffffffff а у исходящего src-mask 0xffffffff
И добавим следующие правила в фаервол ipfw:
Теперь нам надо добавить в таблицу 12 и 13 всех пользователей указав им в качестве аргумента номер пайпа их тарифного плана, например:
Ну и ответственно скорость не режется на 4 Мбит/с
Не как не пойму где косяк
Код: Выделить всё
rl0: inet 10.113.1.1 netmask 0xffffff00 broadcast 10.113.1.255
rl1: inet 192.168.1.2 netmask 0xffffff00 broadcast 192.168.1.255Код: Выделить всё
ipfw add 501 deny ip from not table\(15\) to any out recv rl0 xmit rl1Код: Выделить всё
ipfw table 15 add 10.113.1.240/32Теперь к тому что не работает.
Режем скорость согласно тарифному плану:
Для каждого тарифного плана создадим 2 pipe с требуемой скоростью, один на вход, другой на выход, и укажем у входящего dst-mask 0xffffffff а у исходящего src-mask 0xffffffff
Код: Выделить всё
ipfw pipe 220 config bw 4096Kbit/s mask src-ip 0xffffffff noerror
ipfw pipe 221 config bw 4096Kbit/s mask dst-ip 0xffffffff noerrorКод: Выделить всё
ipfw add 1001 pipe tablearg ip from table\(12\) to any out recv rl0 xmit rl1
ipfw add 1002 pipe tablearg ip from any to table\(13\) out recv rl1 xmit rl0Код: Выделить всё
ipfw table 12 add 10.113.1.240/32 220
ipfw table 13 add 10.113.1.240/32 221Не как не пойму где косяк