Вы здесь

Juniper. Ограничение интернет-трафика пользователей

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

Задаём Policer

Policer собственно определяет скорость.

  • bandwidth-limit - разрешённая полоса пропускания, в нашем случае мы задали 1Mbps.
  • burst-size-limit - это размер в байтах, который разрешается скачать без каких либо ограничений.
    burst-size-limit вычисляется исходя из скорости интерфейса и времени 5-10ms.
    Для 100мбит это будет:
    100 000 000 bits/sec * (10/1000)sec = 1 000 000 bits
    1 000 000 bits / 8 = 125 000 bytes
policer policer-1mb { if-exceeding { bandwidth-limit 1m; burst-size-limit 125k; } then discard; }
set firewall policer policer-1mb if-exceeding bandwidth-limit 1m set firewall policer policer-1mb if-exceeding burst-size-limit 125k set firewall policer policer-1mb then discard

Задаём Filter

family inet { filter limit-filter { term 10 { from { source-address { 185.209.204.1/32; 31.211.65.195/32; } destination-address { 185.209.204.1/32; 31.211.65.195/32; } } then accept; } term 20 { from { source-address { 0.0.0.0/0; } destination-address { 0.0.0.0/0; } } then { policer policer-1mb; accept; } } } }
set firewall family inet filter limit-filter term 10 from source-address 185.209.204.1/32 set firewall family inet filter limit-filter term 10 from source-address 31.211.65.195/32 set firewall family inet filter limit-filter term 10 from destination-address 185.209.204.1/32 set firewall family inet filter limit-filter term 10 from destination-address 31.211.65.195/32 set firewall family inet filter limit-filter term 10 then accept set firewall family inet filter limit-filter term 20 from source-address 0.0.0.0/0 set firewall family inet filter limit-filter term 20 from destination-address 0.0.0.0/0 set firewall family inet filter limit-filter term 20 then policer policer-1mb set firewall family inet filter limit-filter term 20 then accept

Здесь 185.209.204.1/32 и 31.211.65.195/32 - белые адреса на которых строится туннель. На туннель мы не ставим никаких скоростных ограничений.
На всё остальное мы вешаем policer, что определяется через term 20.

Накладываем Filter на интерфейс

В наем случае мы накладываем фильтр на внешний интерфейс в обоих направлениях.

ge-0/0/0 { unit 0 { family inet { filter { input limit-filter; output limit-filter; } address 31.211.65.195/26; } } }
set interfaces ge-0/0/0 unit 0 family inet filter input limit-filter set interfaces ge-0/0/0 unit 0 family inet filter output limit-filter

Проверка через iperf

На одном компе запускаем iperf server:
C:\iperf>iperf3 -s

На другом компе запускаем iperf клиент:
Тестирование TCP туда-обратно:

iperf3 -c 192.168.254.35 iperf3 -c 192.168.254.35 -R

Увеличение количества времени:

iperf3 -c 192.168.254.35 -t 3000 iperf3 -c 192.168.254.35 -t 3000 -R

iperf может работать в режиме нескольких потоков или TCP сессий:

iperf3 -c 192.168.254.35 -P 10 iperf3 -c 192.168.254.35 -P 10 -R

Тестирование UDP туда-обратно:

iperf3 -c 192.168.254.35 -t 60 -b 30M -u iperf3 -c 192.168.254.35 -t 60 -b 30M -u -R

Еще пример удачного ограничения интернета для внутреннего пользователя

set firewall policer policer-1mb if-exceeding bandwidth-limit 1m set firewall policer policer-1mb if-exceeding burst-size-limit 125k set firewall policer policer-1mb then discard set firewall family inet filter limit-filter term 10 from source-address 10.0.0.0/8 set firewall family inet filter limit-filter term 10 from destination-address 10.0.0.0/8 set firewall family inet filter limit-filter term 10 then accept set firewall family inet filter limit-filter term 20 from source-address 0.0.0.0/0 set firewall family inet filter limit-filter term 20 from destination-address 10.10.33.37/32 set firewall family inet filter limit-filter term 20 then policer policer-1mb set firewall family inet filter limit-filter term 20 then accept set firewall family inet filter limit-filter term 30 from source-address 10.10.33.37/32 set firewall family inet filter limit-filter term 30 from destination-address 0.0.0.0/0 set firewall family inet filter limit-filter term 30 then policer policer-1mb set firewall family inet filter limit-filter term 30 then accept set firewall family inet filter limit-filter term 40 then accept set interfaces irb unit 2 family inet filter input limit-filter set interfaces irb unit 2 family inet filter output limit-filter

Проверка

Смотрим факт того, что фильтр настроен на интерфейсе.

show interfaces irb.2 detail

Проверяем, отрабатывает ли фильтр.
В нашем случае значения будут увеличиваться лишь при срабатывании ограничителя policer.

show firewall show firewall filter internet-limit-filter100m

Добавить комментарий

Filtered HTML

  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Допустимые HTML-теги: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Строки и абзацы переносятся автоматически.

Plain text

  • HTML-теги не обрабатываются и показываются как обычный текст
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Строки и абзацы переносятся автоматически.
CAPTCHA
Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.
Target Image