IVB Опубликовано 20 мая, 2011 (изменено) · Жалоба Доброго времени суток. Есть Cisco Catalyst 6509 с Sup720-3BXL под управлением IOS 12.2(33)SXI1, котрая является ядром локальной сети. Есть около 2к активных клиентов (это в пике - в среднем около 1к), которые подключены к Циске через примерно 70 vlan'ов. Локальный трафик маршрутизируется на Циске, а для того, чтобы получить "внешний" трафик, клиент должен установить PPPoE соединение (т.е. "внешний" клиентский трафик на Циске не маршрутизируется). Для того, чтобы "подсказать" клиенту, что он забыл установить PPPoE соединение, его http запросы, попадающие на Циску, подменяются обращениями к странице подсказки, на которой, собственно, и сказано, что для доступа в "мир" нужно "поднять" PPoE. Сейчас механизм "подмен" выполняется на отдельной железке (MikroTik RB1000). Раньше этот MikroTik выполнял и другие задачи, но постепенно все его обязанности "расползлись" по другим железкам, и на нем остался только механизм "подмен". Поскольку держать для такой простой задачи отдельную железку нецелесообразно - решили механизм "подмен" сделать на Циске, с использованием PBR. Делаем route-map (300 - редиректы запросов к "городским" ресурсам (другие городские провайдеры, с которыми у нас есть прямой линк), 500 - остальные): route-map map-redirect deny 100 description exclude traffic to local nets match ip address redirect-local-no ! route-map map-redirect permit 300 description http traffic to city nets match ip address redirect-city-http set ip next-hop 192.168.105.118 ! route-map map-redirect permit 500 description http traffic to other nets match ip address redirect-world-http set ip next-hop 192.168.105.110 ! route-map map-redirect permit 900 description all other traffic match ip address redirect-all-drop set interface Null0 которая ссылается на следующие ACL (A.A.A.0, ..., E.E.E.0 - "городские" сети, F.F.F.0 и G.G.G.0 - наши собственные реальные IP): ip access-list extended redirect-all-drop remark other traffic to other nets permit ip 10.0.0.0 0.255.255.255 any ip access-list extended redirect-city-http remark http traffic to city nets permit tcp 10.0.0.0 0.255.255.255 A.A.A.0 0.0.3.255 eq www permit tcp 10.0.0.0 0.255.255.255 B.B.B.0 0.0.3.255 eq www permit tcp 10.0.0.0 0.255.255.255 C.C.C.0 0.0.3.255 eq www permit tcp 10.0.0.0 0.255.255.255 D.D.D.0 0.0.0.255 eq www permit tcp 10.0.0.0 0.255.255.255 E.E.E.0 0.0.3.255 eq www ip access-list extended redirect-local-no remark exclude traffic to local addresses from redirect permit ip any 10.0.0.0 0.255.255.255 permit ip any 192.168.0.0 0.0.255.255 permit ip any F.F.F.0 0.0.3.255 permit ip any G.G.G.0 0.0.31.255 ip access-list extended redirect-world-http remark http traffic to other nets permit tcp 10.0.0.0 0.255.255.255 any eq www и вешаем ее (route-map) на все клиентские vlan'ы (напомню, их около 70 - но не во всех по 50 подсеток, есть и такие, в которых по 2-3 подсетки): interface Vlan52 ip address 10.52.55.1 255.255.255.0 secondary [... пропущено около 50 secondary адресов ...] ip address 10.52.8.1 255.255.255.0 secondary ip address 10.52.7.1 255.255.255.0 ip access-group bunker52 in no ip redirects no ip unreachables no ip proxy-arp ip flow ingress ip route-cache policy ip policy route-map map-redirect И практически сразу получаем 100% загрузку процессора, а черз 10-15 секунд следующие сообщения в лог: %FM_EARL7-4-FLOW_FEAT_FLOWMASK_REQ_FAIL: Flowmask request for the flow based feature Reflexive ACL for protocol IPv4 is unsuccessful, hardware acceleration may be disabled for the feature %FM-4-TCAM_ENTRY: Hardware TCAM entry capacity exceeded %FMCORE-4-RACL_REDUCED: Interface Vlan37 routed traffic will be software switched in ingress direction %FMCORE-4-RACL_REDUCED: Interface Vlan82 routed traffic will be software switched in egress direction %FMCORE-4-RACL_REDUCED: Interface Vlan81 routed traffic will be software switched in egress direction %FMCORE-4-RACL_REDUCED: Interface Vlan80 routed traffic will be software switched in egress direction %FMCORE-4-RACL_REDUCED: Interface Vlan78 routed traffic will be software switched in egress direction и т.д. Перед этим я все это тестировал на одном vlan'е - все прекрасно работает. Трафик, кторый нужно полиси-роутить (именно тогда, когда я попытался включить полиси-роутинг для всех vlan'ов) не превышал 100 кбит/с (хотя, бывает, подскакивает и до 20 мбит/с, когда подключается толпа клиентов с вирусняком). Можно ли каким-то образом (за счет оптимизации конфигов) избежать переполнения TCAM, или наша Циска принципиально не может полиси-роутить в нужном нам объеме? Нужно также отметить, что у нас довольно объемные ACL'и - для каждого vlan'а создается standard ACL, содержащий все IP адреса неотключенных клиентов. Суммарно это около 3к адресов. Но это ведь не так много для 3BXL. Вот на всякий случай результат show tcam counts detail (уже после того, как полиси-роутинг был убран с клиентских vlan'ов). Used Free Percent Used Reserved ---- ---- ------------ -------- Labels:(in) 87 3985 2 24 Labels:(eg) 8 4064 0 24 ACL_TCAM -------- HI BANK Masks: 1866 182 91 72 Entries: 5216 11168 31 576 LOW BANK Masks: 1077 971 52 0 Entries: 6076 10308 37 0 QOS_TCAM -------- HI BANK Masks: 25 2023 1 25 Entries: 0 16384 0 200 LOW BANK Masks: 4 2044 0 0 Entries: 22 16362 0 0 LOU: 0 128 0 ANDOR: 0 16 0 ORAND: 0 16 0 ADJ: 10 2038 0 Изменено 20 мая, 2011 пользователем IVB Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
nnm Опубликовано 20 мая, 2011 · Жалоба Policy-based routing (PBR) for route-map sequences that use the match ip address, set ip next-hop, and ip default next-hop PBR keywords. Попробуйте убрать policy-map с 'set interface Null0'. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Дегтярев Илья Опубликовано 20 мая, 2011 · Жалоба route-map map-redirect deny 100 description exclude traffic to local nets match ip address redirect-local-no ! Весь проматчившийся трафик идет к процу, на 65тых нельзя использовать match без set. Вообще в вашем случае даже acl с подсетями не нужно. match acl (dst port =80) set ip default next-hop (ip сервера со страничкой) соответственно для всего, куда нет маршрута будет вылетать инструкция. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
littlevik Опубликовано 21 мая, 2011 · Жалоба Выше Илья верно написал - нельзя без set. И, вообще, использовать в PBR deny нехорошо. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Дегтярев Илья Опубликовано 21 мая, 2011 · Жалоба "использовать в PBR deny нехорошо" на 36/37xx нельзя. на SUP720 - без проблем в железе отрабатывает. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
IVB Опубликовано 23 мая, 2011 · Жалоба Policy-based routing (PBR) for route-map sequences that use the match ip address, set ip next-hop, and ip default next-hop PBR keywords. Попробуйте убрать policy-map с 'set interface Null0'. Попробую. Но тогда подскажите, пожалуйста, как я могу с использованием PBR отправить определенный трафик "в никуда". Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
sol Опубликовано 23 мая, 2011 · Жалоба А нельзя ПЕРЕД PBR дропнуть трафик ACL ем? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
IVB Опубликовано 23 мая, 2011 · Жалоба Вообще в вашем случае даже acl с подсетями не нужно. match acl (dst port =80) set ip default next-hop (ip сервера со страничкой) соответственно для всего, куда нет маршрута будет вылетать инструкция. Сейчас у меня на этой Циске есть default gateway, поэтому предложенный Вами вариант не подходит. Поэтому же мне пришлось добавить "set interface Null0". Если я убежусь, что Циска не "просаживается" в "моем" варианте - тогда я переделаю маршрутизацию, чтобы избавиться от default gateway и упростить route-map. Но все равно мне нужно будет отдельно выделить городские подсети (там разные страницы подсказки). Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
IVB Опубликовано 23 мая, 2011 · Жалоба route-map map-redirect deny 100 description exclude traffic to local nets match ip address redirect-local-no ! Весь проматчившийся трафик идет к процу, на 65тых нельзя использовать match без set. А вот это, похоже, и есть основная причина. Получается, несмотря на то, что у меня стоит deny (что означает, что весь проматчившийся трафик должен исключаться из дальнейших проверок), трафик все равно попадает в проц. Значит, deny вообще не имеет смысла, вместо него можно ставить permit, и нужно добавить set default nexthop на существующий gateway. Спасибо за наводку. А нельзя ПЕРЕД PBR дропнуть трафик ACL ем? Можно, но тогда прийдется эти ACL'и "вешать" на все клиентские vlan'ы (на out). Не уверен, что так намного проще. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Tosha Опубликовано 23 мая, 2011 · Жалоба 1) Надо убить роутинг без "set" 2) Надо убить блок с назначением "set interface Null0" Первое вообще непонятно, т.к. раз не надо роутить - так зачем писать пустышку Если хотите что-то исключить из роутинга - аксесс лист в роутмапах позволяет писать правила "Deny" и, соответсвенно, то что попадает под "Deny" не роутится. Как минимум так прокатывает на этой фабрике на 76** Второе переформировать в ACL. Если хотите что-то запретить так надо применять инструмент запрещения/разрешения (ACL) а не "стучать по гвоздю микроскопом". Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Tosha Опубликовано 23 мая, 2011 · Жалоба Можно, но тогда прийдется эти ACL'и "вешать" на все клиентские vlan'ы (на out). Не уверен, что так намного проще. Поробуйте найти иное место для этого ACL, нежеле чем клиентскте порты. На "выходе" например. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
220B Опубликовано 31 октября, 2014 · Жалоба IVB удалось решить проблему? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
DVM-Avgoor Опубликовано 31 октября, 2014 · Жалоба Его проблема в дизайне + особенностях древней коробки. А вы - некропостер :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
220B Опубликовано 31 октября, 2014 (изменено) · Жалоба Его проблема в дизайне + особенностях древней коробки. А вы - некропостер :) У меня есть похожая железяка, но на Sup32-10GE и на днях тоже попробовал реализовать PBR на 360 Вланах и получил похожий результат. Изменено 31 октября, 2014 пользователем 220B Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
DVM-Avgoor Опубликовано 1 ноября, 2014 · Жалоба У меня есть похожая железяка, но на Sup32-10GE и на днях тоже попробовал реализовать PBR на 360 Вланах и получил похожий результат. Потому что так не работает. На вланах случаем ip access-group in не висит? Вообще это грустный дизайн - PBR на XXX интерфейсов. Пробуйте VRF, хотя не факт что он будет более экономичен к TCAM. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...