Jump to content

Recommended Posts

Posted

Возникла необходимость на c3750, терминящих кучу абонентских вланов, задавать юзерам шлюз по умолчанию в зависимости от source ip

 

set ip default next-hop тридцать седьмые не умеют, поэтому вместо него route map с матчем интернетовских сеток в dst, и с set next-hop вместо set default next-hop

Далее в роутмап добавляется ещё один матч с нужной сеткой в кач-ве source ip

 

Сумбурно как-то обьяснил, но лучше словами не получается =) как-то так:

 

Акцес-листы:

Extended IP access list INET_IPS
   10 permit ip any 0.0.0.0 9.255.255.255
   20 permit ip any 11.0.0.0 0.255.255.255
   30 permit ip any 12.0.0.0 3.255.255.255
   40 permit ip any 16.0.0.0 15.255.255.255
! ...............
! В общем, тут всё кроме зарезервированных сеток
! ...............

Extended IP access list togw1
   10 permit ip 10.1.1.0 0.0.0.255 any
   20 permit ip 10.1.2.0 0.0.0.255 any

Extended IP access list togw2
   10 permit ip 10.1.3.0 0.0.0.255 any

 

 

Роут-мап:

route-map GW permit 10
match ip address INET_IPS togw1
set ip next-hop 10.10.10.1
!
route-map GW permit 20
match ip address INET_IPS togw2
set ip next-hop 10.10.10.2
!

 

Ну и далее вешаем одинаковый роут-мап на несколько SVI.

Цель - сделать так, чтобы с минимумом телодвижений, изменением акцес-листа в PBR можно было бы направить трафик различных подсеток на различные шлюзы.

 

Проблема заключается в том, что в роут-мапе почему-то отрабатывается только первый секвенс (permit 10); второй игнорируется.

Трафик, совпадающий с `togw1` идёт на 10.10.10.1, трафик, не совпадающий ни с каким Acl идёт в дефолт; трафик, совпадающий с `togw2` (permit 20) также почему-то идёт в дефолт

 

Ткните носом, чего я не учёл в цискиной логике? =)

Posted

Update. Суть:

Если после параметра match идет несколько опций, то к ним применяется логика "ИЛИ", то есть должен совпасть один из перечисленных параметров. Если задано несколько параметров match в отдельных строках, то к ним применяется логика "И", то есть должны совпасть все параметры.

Вопрос: какого хрена кошак, когда я задаю несколько матчей отдельными строками, самостоятельно ставит их в одну строку и, главное, можно ли этого избежать? =)

Posted

а может, для начала почитать про Longest prefix match и немного подумать, почему оно именно так, а не иначе?

Posted

Extended IP access list INET_IPS

10 permit ip any 0.0.0.0 9.255.255.255

20 permit ip any 11.0.0.0 0.255.255.255

30 permit ip any 12.0.0.0 3.255.255.255

40 permit ip any 16.0.0.0 15.255.255.255

не бережете вы себя

так то будет проще

Extended IP access list INET_IPS
   10 deny ip any 10.0.0.0 0.255.255.255
   20 deny ip any 172.16.0.0 0.15.255.255
   30 deny ip any 192.168.0.0 0.0.255.255
   40 permit ip any 0.0.0.0 255.255.255.255
конец листа

 

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

потому что гладиолус

 

надо в аксес-листе жестко прописать откуда-куда и ставить этот ОДИН ацл в роут-мап

Posted

10 deny ip any 10.0.0.0 0.255.255.255

и получаем весь трафик на CPU. Спасибо, обойдусь

 

а может, для начала почитать про Longest prefix match и немного подумать, почему оно именно так, а не иначе?

А может поясните, как Longest prefix match отвечает на вопрос, почему в route-map 3750 не получается заставить работать матчи как "AND"?

 

надо в аксес-листе жестко прописать откуда-куда и ставить этот ОДИН ацл в роут-мап

И вместо двух простых acl в общем роутмапе - писать сотни нее*ических портянок на каждый SVI. Благодарю покорно

Posted

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

если у вас между вланами ходит больше трафика чем интернет, то да, конечно, придется извращаться

Posted

Насколько я помню, указание ACL в одной строчке - равно логическому ИЛИ с точки зрения cisco.

Если вам нужно логическое И, необходимо отдельно указать каждый match

match ip address INET_IPS 
match ip address togw1
set ip next-hop 10.10.10.1

 

Во всяком случае такая логика используется в VLAN-ACL

Posted

Насколько я помню, указание ACL в одной строчке - равно логическому ИЛИ с точки зрения cisco.

Если вам нужно логическое И, необходимо отдельно указать каждый match

match ip address INET_IPS 
match ip address togw1
set ip next-hop 10.10.10.1

 

Во всяком случае такая логика используется в VLAN-ACL

 

Так в том-то и дело!

Вопрос: какого хрена кошак, когда я задаю несколько матчей отдельными строками, самостоятельно ставит их в одну строку и, главное, можно ли этого избежать? =)

Posted

Так в том-то и дело!

 

Просмотр сообщенияWingman (Вчера, 20:41) писал:

Вопрос: какого хрена кошак, когда я задаю несколько матчей отдельными строками, самостоятельно ставит их в одну строку и, главное, можно ли этого избежать? =)

я же говорю, пишите в аксес листе не any, a source-ip и будет только один acl и матчить по нему

Posted

Так в том-то и дело!

 

Просмотр сообщенияWingman (Вчера, 20:41) писал:

Вопрос: какого хрена кошак, когда я задаю несколько матчей отдельными строками, самостоятельно ставит их в одну строку и, главное, можно ли этого избежать? =)

я же говорю, пишите в аксес листе не any, a source-ip и будет только один acl и матчить по нему

 

Тогда для каждого next-hop получится своя длинная портянка вместо короткого acl с перечислением сурсов, некрасиво и неудобно =)

Хочется понять, можно ли заставить кошку обрабатывать матчи как "AND", и если да, то как

Posted

если только 2 некст-хопа, то можно одних матчить портянкой, остальных отправлять по-дефолту

Posted

А, вспомнил, правда мне это попадалось в configuration guide nexus'ов, но там было черным по белому написано:

A match command cannot refer to more than one ACL in a route map used for policy-based routing.
Posted

Правда на себе не проверял, но может имеет смысл попробовать сделать что-то типа:

 

ip prefix-list 1 seq 5 permit 10.0.0.0/24
!
route-map GW permit 10
match ip address INET_IPS
match ip route-source prefix-list 1
set ip next-hop 10.10.10.1

Posted

Unsupported Route-Map Configuration Commands

 

match ip address prefix-list prefix-list-name [prefix-list-name...]

Не пройдёт =) По интерфейсам матчить тоже нельзя

видимо, придётся-таки портянки писать

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.