Меню

SLIDER.WEB studio

Connect with us

БЛОГ


Настройка Cisco QoS для дома

Сегодня 1 апреля, день смеха! И сегодня мы будем шутить над маршрутизатором. В шутить мы будем следующим образом - заставим наш роутер управлять ВХОДЯЩИМ трафиком и приоритезировать его по нашему велению и хотению. В этом нам поможет QoS. А как его настроить в домашних условиях - расскажу вам я.

Для начала классифицируем наш входящий траффик и распределим его по очередям

class-map match-any RealTime-Class-Out
 match ip precedence 5
class-map match-any Hi-Class-Out
 match ip precedence 4
class-map match-any Lo-Class-Out
 match ip precedence 2
 match ip precedence 1
class-map match-any Med-Class
 match access-group name WWW
class-map match-any Lo-Class
 match access-group name BitTorrent
class-map match-any Hi-Class
 match access-group name Skype
 match access-group name IPTV
 match access-group name PLEX
class-map match-any Med-Class-Out
 match ip precedence 3
class-map match-any RealTime-Class
 match access-group name SSH
 match access-group name CELL

Теперь создадим политику, которая распределит наш крассифицированный траффик по очередям и обеспечит управление при перегрузках

policy-map Queueing
 class RealTime-Class-Out
  priority 7000
 class Hi-Class-Out
  bandwidth remaining percent 50
  random-detect
  random-detect exponential-weighting-constant 8
  random-detect precedence 4 20 60 20
 class Med-Class-Out
  bandwidth remaining percent 25
  random-detect
  random-detect exponential-weighting-constant 8
  random-detect precedence 3 15 30 15
 class Lo-Class-Out
  bandwidth remaining percent 20
  random-detect
  random-detect exponential-weighting-constant 3
  random-detect precedence 1 1 15 3
  random-detect precedence 2 10 20 10

Теперь создадим политику, которая будет управлять исходящим трафиком, путем тегирования, распределяя его по очереядям, и ограничивая пропускную способность низко-приоритетного трафика.

policy-map TAGGING
 class Hi-Class
  set precedence 4
 class Med-Class
  set precedence 3
 class Lo-Class
  police 10000 2000 2000 conform-action set-prec-transmit 2 exceed-action set-prec-transmit 1 violate-action set-prec-transmit 1
 class RealTime-Class
  set precedence 5
 class class-default
  set ip precedence 1

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

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

interface FastEthernet0
 no ip address
 ip flow ingress
 ip flow egress
 duplex auto
 speed auto
 service-policy output Queueing
!
interface FastEthernet0.97
 description Transit: SIBSET Uplink [100Mbit] (vlan 97)
 encapsulation dot1Q 97
 ip address 1.2.3.4 255.255.255.224
 ip access-group PROCECT in
 no ip redirects
 no ip unreachables
 no ip proxy-arp
 ip flow ingress
 ip flow egress
 ip nat outside
 ip virtual-reassembly in
!

На внутренний интерфейс, который смотрит в локальную сеть навешиваем политику тегирования

interface FastEthernet1
 description Cust: SLIDER.WEB studio [100Mbit] (ethernet LAN)
 ip address 10.10.45.1 255.255.255.0
 no ip redirects
 no ip unreachables
 no ip proxy-arp
 ip accounting output-packets
 ip flow ingress
 ip flow egress
 ip nat inside
 ip virtual-reassembly in
 duplex auto
 speed auto
 ipv6 address 2001:470:28:1E2:1000::1/69
 ipv6 enable
 ipv6 nd managed-config-flag
 ipv6 dhcp server Pfx_1000-1800 rapid-commit
 fair-queue
 service-policy input TAGGING
 hold-queue 100 out

Назначаем локальную политику для локального трафика

ip local policy route-map TAGGING

Создадим отдельную карту, в которой определим очереди тегированного траффика

route-map TAGGING permit 20
 match ip address SSH
 set ip precedence flash-override
!
route-map TAGGING permit 40
 set ip precedence flash
!

Здесь я приведу набор списков доступа для примера.

ip access-list extended BitTorrent
 permit udp any eq 51413 any
 permit udp any range 65000 65535 any
 permit tcp any range 65000 65535 any
 permit tcp any eq 51413 any

ip access-list extended CELL
 permit ip any host 10.10.45.147
 permit ip host 10.10.45.147 any

ip access-list extended IPTV
 permit ip any host 193.238.131.202
 permit ip host 193.238.131.202 any

ip access-list extended PLEX
 permit tcp any host 10.10.45.3 eq 32400
 permit tcp host 10.10.45.3 any eq 32400

ip access-list extended SSH
 permit tcp any any eq 22

ip access-list extended Skype
 permit udp any eq 44330 any
 permit udp any eq 55148 any

ip access-list extended WWW
 permit tcp any any eq www
 permit tcp any any eq 443

В чем хитрость, спросит пытливый читатель, а я отвечу. Хитрость в том, что таким хитрым образом мы обеспечили приоритезацию трафика внутри самого маршрутизатора, между интерфейсами Fa0 и Fa1. Так как мы не можем управлять входящим трфффиком напрямую, то мы обеспечили данный функционал, упраляя исходящим траффиком с интерфейса Fa0 в сторону Fa1.

Со стороны внутреннего интерфейса Fa1 траффик считается исходящим как в сторону Fa0, та к и в сторону нашей локальной сети. А локальная политика позволяет протегировать траффик прошедший через NAT. Таким образом мы обеспечили полноценную приоритезацию входящего трафика.

С данной настройкой я теперь могу качать файлы на максимальной скорости, не переживая что начнет разваливаться IPTV, заикаться телефония или подлагивать сетевые игры...

Дерзайте и Вы!

PS: между прочим хочу заменить, что после применения QoS на роутере мой Wi-Fi начал разогналя до положенных ему по стандарту скоростей - около 100 мегабит. До этого выше 20-30 не забирался. В качестве точки доступа я использую D-Link DIR-615-R2

1

Posted in Инфраструктура, Полезности on апр 01, 2017