Jump to content

Поведение BGP внутри VRF

Схема сети

vrf.png

 

Имеется cisco 7604. Сейчас выполняет роль бордера с двумя аплинками (настроен BGP multihop) отдающими FV + роутит трафик белых адресов. Рядом стоит NAT, который через iBGP получает FV от cisco 7604 и роутит через себя трафик с серых адресов.

Планируется использовать циску еще и как ядро сети, поэтому появилось желание запихать BGP в VRF для удобства работы (с абонентами приходится работать чаще, нежели чем с BGP). После перенеса BGP в VRF возникли проблемы. Роутер стал передавать FV на NAT изменяя адрес next-hop на свой адрес и трафик с NAT'а стал идти через cisco 7604.

 

router bgp 23XXX
bgp router-id X.X.X.X
bgp log-neighbor-changes
!
address-family ipv4 vrf INET
 neighbor 10.100.0.17 remote-as 23XXX
 neighbor 10.100.0.17 activate
 neighbor 10.100.0.17 route-reflector-client
 .................................
 neighbor 71.X.X.X remote-as 13XXX
 neighbor 71.X.X.X shutdown
 neighbor 71.X.X.X ebgp-multihop 2
 neighbor 71.X.X.X update-source Loopback 0
 neighbor 71.X.X.X activate
 neighbor 71.X.X.X send-community
 neighbor 211.X.X.X remote-as 20XXX
 neighbor 211.X.X.X shutdown
 neighbor 211.X.X.X ebgp-multihop 2
 neighbor 211.X.X.X update-source Loopback 0
 neighbor 211.X.X.X activate
 neighbor 211.X.X.X send-community
exit-address-family

 

Гугл навел на информацию где пишут, что такое поведение является нормальным, т.е. если BGP внутри VRF то роутер всегда будет менять next-hop адрес на свой для префиксов полученных через eBGP.

Ссылки:

http://forums.internetworkexpert.com/forums/p/30794/247690.aspx

https://supportforums.cisco.com/discussion/11382371/does-ibgp-run-vrf-does-next-hop-modification

 

1. Можно ли как-то повлиять на такое поведение iBGP в VRF и заставить роутер не менять адрес next-hop?

2. Есть ли еще какие-то особенности и подводные камни использования BGP в VRF?

Edited by crank

Share this post


Link to post
Share on other sites

хм, а для чего вам FV на нате? У вас на нате есть адреса из стыковой подсети провайдера?

 

А так не пробовали

neighbor ip-address next-hop-unchanged

?

Share this post


Link to post
Share on other sites

Пробовал так писать, на что получаю следующее сообщение

%BGP: Can propagate the nexthop only to multi-hop EBGP neighbor

FV на NAT'е чтобы трафик после него не шел через роутер, а сразу уходил дальше. Вместо стыковых адресов используется схема с BGP multihop, т.е циска или нат льет трафик на Л3 свич в нужный VRF, а оттуда он уходит к соответствующему провайдеру.

 

Пробовал через route-map подставлять адрес next-hop при анонсе маршрутов с циски на НАТ, но результата это не дало - все равно циска в next-hop указывает свой адрес.

Share this post


Link to post
Share on other sites

Хм. Я понял что вы хотите. Сначала невнимательно прочитал описание.

Тогда, видимо, проще поменять GRT и VRF местами. BGP сунуть в GRT, а ядро в VRF.

Share this post


Link to post
Share on other sites

Решил поставленную задачу route-map'ом на NAT. С помощью as-path access-list узнаем от какого аплинка пришел префикс и меняем для него next-hop. Пример настройки route-map для Quagga, при условии что ISP1 и ISP2 имеют номера АС 100 и 200 соответственно:

ip as-path access-list 10 permit ^100_.*$
ip as-path access-list 20 permit ^200_.*$
!
route-map BR-IN permit 10
match as-path 10
set ip next-hop X.X.X.X
!
route-map BR-IN permit 20
match as-path 20
set ip next-hop Y.Y.Y.Y
!
route-map BR-IN permit 30
!

Можно еще на роутере выставлять разные комьюнити для префиксов в зависимости от аплинка, с которого он пришел. Потом на NAT используя комьюнити править next-hop также через route-map.

Edited by crank

Share this post


Link to post
Share on other sites

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.