Окт 15 2009

Vyatta. Traffic Shaper и Traffic Limiter. Ограничиваем скорость.

Практически любой маршрутизатор(ну разве что, кроме магистральных) ограничивает скорость передачи для отдельных адресов или групп адресов. Зачем это делается думаю объяснять не нужно. В офисе всегда найдется любитель покачать и его нужно придавить, что бы не наглел, маршрутизатор провайдера интернет нарезает скорость в зависимости от того, какую скорость продали.
Vyatta имеет несколько разных видов ограничителей скорости.
Это Drop Tail, Fair Queue, Rate Limiting и те, которые мы рассмотрим Traffic Shaping и Traffic Limiter.

Из всех перечисленных видов шейперов, только Traffic Limiter ограничивает входящий трафик, все остальные работают только над исходящим трафиком.

Сначала создадим правило по умолчанию. Это может быть как максимально возможная пропускная способность интерфейса, так и минимальное значение. Вариант с минимальным значением хорош для того, что бы бороться с любителями менять ip адреса, что бы выскочить из выделенного им ограничения, но плохо в том, что в этом случае всех нужно будет обязательно описать в правилах.
Зададим правило по умолчанию, для этого переходим в режим настройки:

configure

и выполняем такую команду:

set qos-policy traffic-shaper OFFICE default bandwidth 100mbit

мы определили правило по умолчанию 100 Mbit/s
Теперь можно переходить к индивидуальной настройке.
Для адреса 192.168.1.20 мы выделим 1Mbit/s, а для 192.168.1.17 в 500 Kbit/s.
Для этого выполняем такие команды:
Создаем шейпер в 1Mbit/s

set qos-policy traffic-shaper OFFICE class 10 bandwidth 1mbit

Теперь определяем этому шейперу правило, то есть на какой адрес реагировать:

set qos-policy traffic-shaper OFFICE class 10 match First ip destination address 192.168.1.20/32

И теперь делаем такое же, но для 192.168.1.17

set qos-policy traffic-shaper OFFICE class 20 bandwidth 500kbit
set qos-policy traffic-shaper OFFICE class 20 match Second ip destination address 192.168.1.17/32

Теперь переходим к созданию ограничителя входящего трафика. Ведь это мы только ограничили исходящий трафик к клиенту.
Исход от клиентов наружу ограничиваем так:

set qos-policy traffic-limiter OFFICE-IN class 10 bandwidth 1mbit
set qos-policy traffic-limiter OFFICE-IN class 10 match First ip source address 192.168.1.20/32

Это было для первого адреса, а теперь для второго:

set qos-policy traffic-limiter OFFICE-IN class 20 bandwidth 500kbit
set qos-policy traffic-limiter OFFICE-IN class 20 match Second ip source address 192.168.1.17/32

Ограничители(шейперы) мы создали, но это еще не все.
Теперь наши шейперы нужно приписать к интерфейсу, на котором будет работать ограничение.
Для этого выполняем такие команды:
Для трафика из интернета к клиенту:

set interfaces ethernet eth0 qos-policy out OFFICE

Интерфейс eth0 — интерфейс который смотрит внутрь локальной сети.
И приписываем ограничение входящего от клиента трафика.

set interfaces ethernet eth0 qos-policy in OFFICE-IN

Осталось выполнить обязательную программу:

commit
save

На этом настройка закончена.

  • By 4izh, 15.10.2009 @ 19:20

    А как отшейпить отдельно сеть офиса и отдельно айпи администратора без шейпинга? Зарезать офис, допустим 1 мегабит вход, 256 килобит исход, а админу анлим?

  • By hilik, 16.10.2009 @ 19:53

    Получится только «разрезав сеть на подсети».

  • By AlexVamp, 06.07.2010 @ 14:21

    Просто великолепнейший пример!
    Но я так понимаю это будет резаться весь трафик для этих айпи.
    А как сделать так чтобы зарезалось все с аплинка, а внутри офиса все бегало как обычно?

Other Links to this Post


Украинская Баннерная Сеть