سیسکو BGP Route Reflector چیست؟

سیسکو BGP Route Reflector چیست؟

سیسکو BGP Route Reflector چیست؟

سلام BGP route reflector در واقع یک نوع roll به یک یا چند روتر سیسکو در شبکه Full mesh iBGP واگذار میکند به نحوی که تمامی روتر های همسایه در یک AS به جای اینکه با یکدیگر ارتباط iBGP Peering داشته باشند، فقط با BGP Route Reflector ارتباط iBGP Peering خواهند داشت، لذا تعداد peering ها از x(x-1)/2 که در آن x تعداد روتر های آن AS است به x-1 کانکشن به ازای هر bgp route reflector کاهش پیدا خواهد کرد:

 

 

سیسکو BGP Route Reflector چیست؟ | مقالات شبکه

 

در تصویر بالا تعداد همسایگی های iBGP در شبکه x(x-1)/2 است و سپس به کمک bgp route reflector به x-1 کاهش پیدا میکند:

 

سیسکو BGP Route Reflector چیست؟ | مقالات شبکه

 

 

بدین ترتیب هر روتر در شبکه فقط یک ارتباط iBGP با bgp Route Reflector یا همان RR خواهد داشت و مادامی که یکی از روتر ها اقدام به ارسال Update جدیدی به RR نماید، RR آن Route Update جدید را به تمامی روتر های دیگر (بنا به شرایطی) Reflect خواهد کرد.

سیسکو BGP Route Reflector چیست؟ | مقالات شبکه

 

روتر و یا روتر هایی که به عنوان RR انتخاب میشود میتواند 3 نوع ارتباط BGP Peering داشته باشد:

  1. EBGP
  2. iBGP Client
  3. iBGP non Client

یک RR در شبکه با روتر های دیگر یا ارتباط iBGP Client دارد و یا iBGP non Client، که تنها فرقی که وجود دارد این است که وقتی یک route از یک non Client neighbor دریافت میشود، RR میتواند آنرا به تمامی همسایه ها الا non Client ها Reflect دهد، درواقع هیچ گاه Update دریافت شده از یک non Client به بقیه non Client ها Reflect نخواهد شد.

مثال: مطابق دیاگرام زیر R2 به عنوان RR انتخاب میشود، مادامی که با R1 و R3 به شکل client neighbor کانفیگ شده باشند update های دریافتی از هرکدام به دیگری Reflect خواهد شد، حتی اگر یکی هم non Client باشد باز هم Update ها Reflect میشود ولی اگر هر دو non client باشند آنگاه route update دریافتی از یکی به دیگری reflect نخواهد شد.

سیسکو BGP Route Reflector چیست؟ | مقالات شبکه

1(config)#router bgp 123
R1(config-router)#neighbor 192.168.12.2 remote-as 123
R1(config-router)#network 1.1.1.1 mask 255.255.255.255

R3(config)#router bgp 123
R3(config-router)#neighbor 192.168.23.2 remote-as 123

R2(config)#router bgp 123
R2(config-router)#neighbor 192.168.12.1 remote-as 123
R2(config-router)#neighbor 192.168.12.1 route-reflector-client
R2(config-router)#neighbor 192.168.23.3 remote-as 123
R2(config-router)#neighbor 192.168.23.3 route-reflector-client

همانطور که ملاحظه میکنید روتر R1 شبکه 1.1.1.1 را advertise میکند R2 این Route Update را به R3 نیز Reflect خواهد داد لیکن اگر R1 و R3 به عنوان route-reflector-client معرفی نمیشدند این اتفاق نمی افتاد.

به شکل پیشفرض Reflection بین Client ها اتفاق میوفتد در صورتی که به هر دلیل نخواهیم Reflection به سمت Client ها انجام شود میتوان از این دستور استفاده کرد:

Router(config-router)# no bgp client-to-client reflection

امتیاز post