23 сент. 2010 г.

Ограничение скорости для клиентов Украина/Мир на маршрутизаторе Cisco

Задача: 
Поделить исходящий мировой трафик между клиентами, находящимся за BGP маршрутизатором.

Дано: 
100 мегабит/с "Украины", 10 мегабит/с "мира" и маршрутизатор Cisco 2811, на котором поднято BGP соединение с провайдером. Принимаем по BGP от провайдера только дефолтный маршрут 0.0.0.0

Предисловие: 
Если, конечно, все делать правильно, изначально, то описанное ниже в корне неверно, так как шейпить на бордере считается высшей степенью хамства... Однако не всегда и не у всех есть лишний маршрутизатор в загашнике или же потребляемые ресурсы не настолько велики, чтобы для них заводить отдельную железку. У меня, например, второй вариант.

Решение:
1. Просим провайдера анонсировать UA-IX отдельным пирингом по отдельному VLAN, тем самым мы разделим потоки трафика, Украина побежит в свой интерфейс, все что не найдется в таблице UA-IX побежит в мировой интерфейс.

2. Определяемся с политикой нарезки трафика и создаем отдельные списки доступа (access-list) для каждого клиента, скорость аплоада на мир которого подлежит обрезанию...

Например: Имеем клиента с IP 192.168.18.21/30
Создаем access-list, находясь в режиме глобального конфигурирования:

router(config)#access-list 101 remark --==World Upload Traffic Shape==--
router(config)#access-list 101 permit ip host 192.168.18.21 any

3. На мировом интерфейсе включаем ограничение скорости с нужными значениями для созданных в п.2 списков доступа

Например: Мировой интерфейс имеет название:  FastEthernet 0/1.100

Режем исход на 1 мегабит/с

router(config)#interface FastEthernet 0/1.100
router(config-subif)#rate-limit output access-group 101 1000000 62500 62500 conform-action transmit exceed-action drop

Теперь наш клиент, находящийся в списке доступа под номером 101 будет ограничен 1мегабитом/с исходящего мирового трафика.

П.С. С шейпингом входящего трафика, все аналогично, только задом наперед:

Список доступа:
router(config)#access-list 101 permit ip any host 192.168.18.21

Настройки на интерфейсе:
router(config-subif)#rate-limit input access-group 101 1000000 62500 62500 conform-action transmit exceed-action drop
Отправить комментарий