The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
запутался в route-policy на ios xr, !*! tandberg19042015, 01-Июн-15, 19:47  [смотреть все]
добрый всем.
совсем заблудился в написании этих полисей.
потыкайте носом.
есть времянка - аsr9001
подключены в ней всякие пиринги и соседи
соответственно я вижу кучу чужих автономок с разных направлений
от одной нужно чуток отдалиться, то-есть отдавать им мою сеть с препендом.
на обычном иос как-то не возникало проблем.. а тут чё-та не то..
приведу как щас, потыкайте

моя ас - 1111

prefix-set as444
  192.168.0.0/24,
  192.168.1.0/24,
  192.168.3.0/24,
  192.168.4.0/24
end-set

route-policy pass
  pass
end-policy

route-policy as444_out
  if destination in as444 then
    pass
  else
    drop
  endif
end-policy


neighbor 10.1.0.1
  remote-as 456
  description ***** peer
  address-family ipv4 unicast
   route-policy pass in
   maximum-prefix 100 90 restart 1
   route-policy as333_out out
  !
!
neighbor 10.2.0.1
  remote-as 789
  description ***** test
  address-family ipv4 unicast
   route-policy pass in
   maximum-prefix 100 90 restart 1
   route-policy as444_out out

все работает
на автономку 9999, которую видно с  test? нужно навесить препенд.
и тут я поплыл
как-то так получается

as-path-set tp
  ios-regex '_9999$'
end-set

route-policy testprepend
  if as-path in tp then
    prepend as-path 1111 2
    pass
  else
    pass
  endif
end-policy

.. как всё вместе соединить.. и так-ли вообще ?

  • запутался в route-policy на ios xr, !*! anonymous, 21:36 , 02-Июн-15 (1)
    >[оверквотинг удален]
    > end-set
    > route-policy testprepend
    >   if as-path in tp then
    >     prepend as-path 1111 2
    >     pass
    >   else
    >     pass
    >   endif
    > end-policy
    > .. как всё вместе соединить.. и так-ли вообще ?

    Этот обрывок конфига с кучей несостыковок читать неудобно, поэтому вкратце - смысл: препенд применяется в out policy (туда вешается route-policy) соседа bgp.
    Там и нужно сделать prepend as-path. pass после этого не обязательно, при применении политики и так будет действие pass.
    prefix-set используется в route-policy, но это опционально: можно прям в политике прописать адреса, сетки, as-set'ы и так далее.
    Соответственно, минимальный рабочий конфиг:
    neighbour 1.2.3.4
    address-family ipv4 unicast
    route-policy set_prepend out

    route-policy set_prepend
    if destination in my_net then
    prepend as-path 1234 1
    endif
    end-policy

    Мог где-то ошибиться в синтаксисе, т.к. писал по памяти, ну да "?" поможет.

    • запутался в route-policy на ios xr, !*! tandberg19042015, 23:20 , 02-Июн-15 (2)
      > route-policy set_prepend
      > if destination in my_net then
      > prepend as-path 1234 1

      синтаксис фигня.
      логика рулит
      в данном примере получится что я повешу препенд для всего стыка.
      а мне нужно на конкретную АС

      • запутался в route-policy на ios xr, !*! anonymous, 11:07 , 03-Июн-15 (3)
        >> route-policy set_prepend
        >> if destination in my_net then
        >> prepend as-path 1234 1
        > синтаксис фигня.
        > логика рулит
        > в данном примере получится что я повешу препенд для всего стыка.
        > а мне нужно на конкретную АС

        Ну значит используй не "destination" для match (это было бы не для всего стыка, а для конкретной сетки), а то что и написал: if as-path in ( ios-regex '_9999' ) then prepend as-path 1234 1 endif
        Не работает или в чем проблема?

        • запутался в route-policy на ios xr, !*! tandberg19042015, 11:16 , 03-Июн-15 (4)
          > Не работает или в чем проблема?

          воот !
          мне-же еще в этом-же полисе нужно объявить мои сети на отдачу
          192.168.... ну и тд.
          и вот как соединить это. у меня затуп какой-то..


          • запутался в route-policy на ios xr, !*! anonymous, 18:01 , 03-Июн-15 (5)
            >> Не работает или в чем проблема?
            > воот !
            > мне-же еще в этом-же полисе нужно объявить мои сети на отдачу
            > 192.168.... ну и тд.
            > и вот как соединить это. у меня затуп какой-то..

            Если нужны более сложные правила, чем "если путь содержит ас: добавить препенд; иначе: пропустить", то в блоке else можно использовать apply - применение другой route-policy, то бишь, в которой описать пропуск своих сетей в анонсы и дроп чужих.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру