BGP VRF Route Leakage

Introduction

در شبکه‌های چندسرویسی، جداسازی ترافیک با VRF به شما اجازه می‌دهد جدول‌های مسیریابی مستقل (Routing Table) داشته باشید؛ اما در عمل معمولاً نیاز دارید به‌صورت کنترل‌شده بعضی مسیرها بین VRFها «نشت» (Leaking) داده شوند (مثلاً VRF مدیریت بتواند به همه VRFها دسترسی داشته باشد، یا یک سرویس مشترک بین چند VRF دیده شود).

در این کارگاه، مکانیزم BGP VPN Route Exchange (مبتنی بر مفاهیم RD/RT در سبک L3VPN) را بدون نیاز به MPLS، برای انتقال/نشت کنترل‌شده‌ی مسیرها بین VRFها و همچنین بین دو روتر پیاده‌سازی و ارزیابی می‌کنیم. کلید اصلی کنترل نشت مسیر در این سناریو، ترکیبِ:

  • RD (Route Distinguisher) برای یکتا کردن مسیرهای VRFها

  • RT (Route Target) برای کنترل Import/Export مسیرها بین VRFها

  • Route-map روی vpn export برای فیلترکردن دقیق مسیرهای قابل‌انتشار

Scenario Overview

سناریو شامل دو روتر Soodar1 و Soodar2 (مدل SooDar) و چند میزبان تست است. روی روترها VRFهای red و blue تعریف شده‌اند و روی Soodar1 علاوه بر آن‌ها VRF mgmt نیز وجود دارد.

اهداف آموزشی:

  • درک چرایی و کاربرد Route Leakage در معماری‌های چند VRF

  • پیاده‌سازی نشت مسیر بین VRFها با RD/RT و BGP VPN

  • پیاده‌سازی کنترل نشت مسیر با Route-map روی Export

  • انجام تست‌های صحت‌سنجی (Ping/Route/BGP) و تحلیل خروجی‌ها

bgp-rk

Topology Description

گره‌ها و نقش‌ها

  • Soodar1 (SooDar): هسته‌ی سناریو، دارای VRFهای red, blue, mgmt

  • Soodar2 (SooDar): روتر مقابل، دارای VRFهای red, blue

  • میزبان‌ها:

    • n5 در VRF red سمت Soodar1

    • n6 در VRF blue سمت Soodar1

    • n7 در VRF mgmt سمت Soodar1

    • n8 در VRF red سمت Soodar2

    • n9 در VRF blue سمت Soodar2

این سناریو عمداً طوری طراحی شده که mgmt بتواند مسیرهای red/blue را Import کند (برای دسترسی مدیریتی)، اما Export شدن مسیرهای mgmt به VPN با Route-map محدود شود تا نشت مسیر ناخواسته اتفاق نیفتد.

Prerequisites

پیش‌نیاز دانشی

  • مفاهیم پایه‌ی Routing و جدول مسیریابی

  • مفهوم VRF و جداسازی L3

  • مبانی BGP (Neighbor/AFI/SAFI، مفهوم Policy)

Step-by-step Configuration

در این بخش، ابتدا چرایی هر مرحله را بیان می‌کنیم، سپس چگونگی را با دستور/پیکربندی ارائه می‌دهیم.

1) ایجاد VRFها و Bind کردن اینترفیس‌ها

هدف این مرحله: هر سرویس (red/blue/mgmt) یک جدول مسیریابی مستقل داشته باشد. این جداسازی پایه‌ی جلوگیری از نشت مسیر ناخواسته است.

پیکربندی نمونه روی Soodar1

vrf mgmt
!
vrf red
!
vrf blue
!
interface ge1
 no shutdown
 ip vrf forwarding red
 ip address 1.1.1.1/24
exit
!
interface ge2
 no shutdown
 ip vrf forwarding blue
 ip address 1.2.1.1/24
exit
!
interface ge3
 no shutdown
 ip vrf forwarding mgmt
 ip address 1.3.1.1/24
exit
!
interface ge0
 no shutdown
 ip address 200.1.2.1/24
exit

پیکربندی نمونه روی Soodar2

vrf red
!
vrf blue
!
interface ge1
 no shutdown
 ip vrf forwarding red
 ip address 2.1.1.1/24
exit
!
interface ge2
 no shutdown
 ip vrf forwarding blue
 ip address 2.2.1.1/24
exit
!
interface ge0
 no shutdown
 ip address 200.1.2.2/24
exit

2) راه‌اندازی BGP بین دو روتر (Core/Default Table)

هدف این مرحله: یک ارتباط BGP بین Soodar1 و Soodar2 در جدول اصلی (default) برقرار شود تا بستر حمل/تبادل Routeهای VPN فراهم گردد.

Soodar1

router bgp 65000
 no bgp ebgp-requires-policy
 bgp disable-ebgp-connected-route-check
 neighbor 200.1.2.2 remote-as 65000
 !
 address-family ipv4 unicast
  redistribute connected
  redistribute static
  neighbor 200.1.2.2 next-hop-self
  neighbor 200.1.2.2 route-map rmap-export out
  rd vpn export 65000:100
  rt vpn import 65000:110 65000:120 65000:130 65000:220 65000:230
  rt vpn export 65000:100
  export vpn
  import vpn
 exit-address-family
exit
!

Soodar2

router bgp 65000
 no bgp ebgp-requires-policy
 bgp disable-ebgp-connected-route-check
 neighbor 200.1.2.1 remote-as 65000
 !
 address-family ipv4 unicast
  redistribute connected
  redistribute static
  neighbor 200.1.2.1 next-hop-self
  neighbor 200.1.2.1 route-map rmap-export out
  rd vpn export 65000:200
  rt vpn import 65000:110 65000:120 65000:130 65000:220 65000:230
  rt vpn export 65000:200
  export vpn
  import vpn
 exit-address-family
exit

در این سناریو هر دو روتر در یک AS (65000) هستند. فعال بودن export vpn و import vpn باعث می‌شود Routeهای VRF به‌صورت VPN Route تبادل شوند.

3) پیکربندی BGP در VRFها (RD/RT) برای Route Leakage کنترل‌شده

هدف این مرحله: مشخص کنیم هر VRF چه Routeهایی را به VPN Export می‌کند و چه Routeهایی را Import می‌کند. این همان نقطه‌ی اصلی Route Leakage است.

3-1) VRF red روی Soodar1

چرا: شبکه‌ی 1.1.1.0/24 باید به VRF red سمت Soodar2 برسد و در مقابل 2.1.1.0/24 را نیز دریافت کند.

router bgp 65000 vrf red
 address-family ipv4 unicast
  redistribute connected
  rd vpn export 65000:120
  rt vpn import 65000:220 65000:110
  rt vpn export 65000:120
  export vpn
  import vpn
 exit-address-family
exit

3-2) VRF red روی Soodar2

router bgp 65000 vrf red
 address-family ipv4 unicast
  redistribute connected
  rd vpn export 65000:220
  rt vpn import 65000:120 65000:110
  rt vpn export 65000:220
  export vpn
  import vpn
 exit-address-family
exit

3-3) VRF blue روی Soodar1

router bgp 65000 vrf blue
 address-family ipv4 unicast
  redistribute connected
  rd vpn export 65000:130
  rt vpn import 65000:230 65000:110
  rt vpn export 65000:130
  export vpn
  import vpn
 exit-address-family
exit

3-4) VRF blue روی Soodar2

router bgp 65000 vrf blue
 address-family ipv4 unicast
  redistribute connected
  rd vpn export 65000:230
  rt vpn import 65000:130 65000:110
  rt vpn export 65000:230
  export vpn
  import vpn
 exit-address-family
exit

4) طراحی VRF مدیریت: Import گسترده + Export محدود (Route-map)

هدف این مرحله: VRF مدیریت (mgmt) بتواند به همه شبکه‌های red/blue دسترسی داشته باشد (برای عملیات/مانیتورینگ)، اما فقط Prefixهای مجاز mgmt را Export کند تا سایر VRFها یا Backbone Routeهای مدیریت ناخواسته را یاد نگیرند.

4-1) ACL و Route-map برای محدودسازی Export

ip access-list rmap-acl
 5 permit 1.3.1.0/24 any
!
route-map rmap1 permit 10
 match ip address rmap-acl
exit

4-2) BGP VRF mgmt با Route-map روی vpn export

router bgp 65000 vrf mgmt
 bgp disable-ebgp-connected-route-check
 address-family ipv4 unicast
  redistribute connected
  rd vpn export 65000:110
  rt vpn import 65000:120 65000:130 65000:220 65000:230
  rt vpn export 65000:110
  route-map vpn export rmap1
  export vpn
  import vpn
 exit-address-family
exit

این یک الگوی رایج در شبکه‌های سازمانی است: mgmt مسیرهای دیگران را Import می‌کند (برای دسترسی)، اما Export آن با Policy محدود می‌شود تا مسیرهای مدیریت به‌صورت ناخواسته بین VRFها پخش نشود.

5) کنترل دسترسی به شبکه مدیریت (اختیاری/مطابق سناریو)

هدف این مرحله: حتی اگر مسیرِ mgmt به‌اشتباه به VRFهای دیگر نشت کرد، با ACL سطح اینترفیس جلوی دسترسی به سگمنت مدیریت گرفته شود.

ip access-list MGMT_ALL
 5 permit any any reflect
!
ip access-list DENY-TO-MGMT
 5 deny any any
!
interface ge3
 ip access-group DENY-TO-MGMT out
 ip access-group MGMT_ALL in
exit

Verification and Testing

در این بخش با چند تست کلیدی، هم عملکرد نشت مسیر و هم کنترل آن را ارزیابی می‌کنیم.

1) بررسی همسایگی BGP بین Soodar1 و Soodar2

show bgp summary

خلاصه وضعیت BGP را در جدول اصلی نشان می‌دهد و مشخص می‌کند همسایگی بین 200.1.2.1 و 200.1.2.2 برقرار است یا خیر.

2) بررسی جدول مسیریابی هر VRF روی Soodar1

show ip route vrf red

مسیرهای VRF red را نمایش می‌دهد؛ انتظار می‌رود شبکه 2.1.1.0/24 از طریق BGP/VPN قابل مشاهده باشد.

show ip route vrf blue

مسیرهای VRF blue را نمایش می‌دهد؛ انتظار می‌رود شبکه 2.2.1.0/24 از طریق BGP/VPN قابل مشاهده باشد.

show ip route vrf mgmt

مسیرهای VRF mgmt را نمایش می‌دهد؛ انتظار می‌رود شبکه‌های red/blue هر دو سمت از طریق Import RTها دیده شوند.

3) تست Ping بین سگمنت‌های هم‌نام (red↔red و blue↔blue)

از n5 (1.1.1.10) به n8 (2.1.1.10)

ping -c 3 2.1.1.10

اتصال End-to-End بین دو سایت در VRF red را تست می‌کند. در صورت صحیح بودن RD/RT و BGP، باید Ping موفق باشد.

از n6 (1.2.1.10) به n9 (2.2.1.10)

ping -c 3 2.2.1.10

اتصال End-to-End بین دو سایت در VRF blue را تست می‌کند. در صورت صحیح بودن RD/RT و BGP، باید Ping موفق باشد.

4) تست دسترسی مدیریتی (mgmt → همه)

از n7 (1.3.1.10) به n5/n6/n8/n9

ping -c 3 1.1.1.10

تست دسترسی میزبان مدیریت به میزبان VRF red سمت Soodar1.

ping -c 3 1.2.1.10

تست دسترسی میزبان مدیریت به میزبان VRF blue سمت Soodar1.

ping -c 3 2.1.1.10

تست دسترسی میزبان مدیریت به میزبان VRF red سمت Soodar2.

ping -c 3 2.2.1.10

تست دسترسی میزبان مدیریت به میزبان VRF blue سمت Soodar2.

اگر در مسیر برگشت (Return Path) مشکل دیدید، خروجی show ip route vrf mgmt و ACLهای مربوط به ge3 را بررسی کنید. هدف آموزشی این بخش این است که نشان دهد Route Leak به‌تنهایی کافی نیست و Policy/ACL هم می‌تواند رفتار نهایی را تغییر دهد.

5) اطمینان از Export محدود mgmt (کنترل نشت)

show bgp vrf mgmt ipv4 unicast

Routeهای VRF mgmt را در BGP نمایش می‌دهد؛ انتظار می‌رود فقط Prefixهای مجاز (مثل 1.3.1.0/24) برای Export انتخاب شده باشند (مطابق route-map vpn export).

Summary

در این کارگاه:

  • VRF را برای جداسازی سرویس‌های red, blue, mgmt پیاده‌سازی کردید.

  • با استفاده از BGP VPN (RD/RT)، مسیرها را به‌صورت کنترل‌شده بین VRFها و بین دو روتر تبادل دادید.

  • با Route-map روی vpn export، نشت مسیر mgmt را محدود کردید تا فقط Prefixهای مجاز منتشر شوند.

  • با تست‌های عملی (Route/BGP/Ping) صحت سناریو و اثر Policyها را ارزیابی کردید.