Logo CNTTShop.vn

Hotline: 0979 925 386

Công Ty TNHH Công Nghệ Việt Thái Dương
NTT03, Line 1, Thống Nhất Complex, 82 Nguyễn Tuân, Thanh Xuân, Hà Nội.
Danh mục sản phẩm

BGP Route Reflector là gì? Hướng dẫn cấu hình BGP Route Reflector trên router Cisco

BGP Route Reflector là gì?

BGP Route Reflector là 1 phương pháp để loại bỏ yêu cầu kết nối full-mesh giữa các iBGP peer trong hệ thống mạng.

Theo mặc định, các iBGP sẽ không quảng bá các tuyến mà nó học được từ các iBGP khác, vì vậy khi thiết kế các iBGP cần phải kết nối Full-mesh với nhau. Đối với những mạng lớn, điều này sẽ gia tăng độ phức tạp, thời gian cấu hình và khó mở rộng trong tương lai.

Ví dụ chúng ta có mô hình gồm 6 router được cấu hình iBGP. Khi được kết nối full-mesh, dựa trên công thức N (N-1) / 2 với N là số router, chúng ta sẽ tính được số iBGP peering là 6 (6-1 = 5) / 2 = 15 như mô hình bên dưới:

iBGP peering full-mesh

BGP Route Reflector (RR) là phương pháp trong BGP được sử dụng để bỏ qua yêu cầu của iBGP Full Mesh này và cung cấp tất cả thông tin Định tuyến iBGP cho tất cả các iBGP Peer. Với cơ chế này, các router sử dụng ít băng thông và CPU cho các tiến trình BGP, giảm độ phức tạp khi quản trị và có thể mở rộng trong tương lai. Điều này đặc biệt quan trọng đối với các mạng lớn.

Như trong mô hình bên dưới, chúng ta vẫn có 6 router, khi sử dụng BGP Route Reflector, R11 router được chọn làm RR, các router khác (gọi là RR Client) được cấu hình iBGP peer với RR và chỉ gửi các bản update tới RR. Do vậy, chúng ta chỉ cần 5 iBGP giữa 6 router này.

mô hình kết nối iBGP sử dụng BGP Route Reflector

Khi thiết kế BGP sử dụng Route Reflector, chúng ta có thể xây dựng nhiều Route Reflector để dự phòng trong hệ thống, các bạn có thể tham khảo thêm tại bài viết:

Hoạt động của BGP Route Reflector

Có 3 vai trò chính được phân chia trong BGP Route Reflector:

  • Route Reflector Server, trong bài viết mình sẽ gọi là RR
  • Route Reflector Client, trong bài viết mình sẽ gọi là RR-Client
  • Non Client, trong bài viết mình sẽ gọi là Non-RR Client

Khi các route đươc quảng bá từ RR Client đến RR, RR sẽ quảng bá các tuyến này (reflected) tới các RR Client khác, chúng ta cùng xem xét các hành vi quảng bá route của RR.

Trường hợp 1: Route nhận được từ non-client router

Khi RR nhận được 1 Update từ Non-RR Client, RR chỉ quảng bá (reflected) các route này tới các RR-Client mà không gửi cho các Non-RR Client khác.

Ibgp non-RR client gửi update tới RR

Trường hợp 2: Route nhận được từ RR-Client

Trong trường hợp 1 RR-Client gửi bản tin Update tới RR, RR sẽ gửi update tới tất cả RR-Client và Non-RR client, trừ router gửi RR-Client gửi ra bản tin update đó.

trường hợp 2: RR-Client gửi update route tới RR server

Trường hợp 3: Route nhận được từ eBGP

Trong trường hợp RR nhận được bản tin update từ 1 eBGP, RR sẽ gửi update tới cả RR-Client và Non-RR Client.

trường hợp 3 eBGP gửi ra bản tin update

Hướng dẫn cấu hình BGP Route Reflector trên router Cisco

Cấu hình BGP Route Reflector

Ở đây mình sẽ sử dụng mô hình đơn giản với 3 Router Cisco chạy iBGP AS 65000, trong đó 1 router (R2) được cấu hình là RR, 2 router còn lại RR-Client.

mô hình kết nối BGP Route reflector

Với mô hình trên, với iBGP nếu chúng ta không cấu hình peering giữa R1 và R3 (chỉ cấu hình iBGP giữa R1-R2 và R2-R3) thì R2 sẽ không chuyển tiếp các tuyến học được từ R1 cho R3 (do quy tắc iBGP split horizon trong BGP). Khi R2 được cấu hình là Route Reflector, R2 sẽ chuyển tiếp các route này cho R3.

Cấu hình trên R1

Trên R1 và R3, chúng ta cấu hình iBGP peering với R2 như với iBGP thông thường:

R1(config-if)#router bgp 65000
R1(config-router)#neighbor 10.0.0.2 remote-as 65000
R1(config-router)#network 1.1.1.1 mask 255.255.255.255

Cấu hình trên Router R3

R3(config-if)#router bgp 65000
R3(config-router)#neighbor 10.0.0.5 remote-as 65000
R3(config-router)#network 3.3.3.3 mask 255.255.255.255

Cấu hình trên router R2

R2(config)#router bgp 65000
R2(config-router)#neighbor 10.0.0.1 remote-as 65000
*Sep 22 10:02:27.162: %BGP-5-ADJCHANGE: neighbor 10.0.0.1 Up
R2(config-router)#neighbor 10.0.0.1 route-reflector-client
R2(config-router)#neighbor 10.0.0.6 remote-as 65000
R2(config-router)#neighbor 10.0.0.6 route-reflector-client
*Sep 22 10:02:53.271: %BGP-5-ADJCHANGE: neighbor 10.0.0.6 Up

Kiểm tra

Đầu tiên chúng ta sẽ kiểm tra trên R2, lúc này R2 đã học được các route từ R1 và R3:

kiểm tra các route ở trên router R2

Kiểm tra chi tiết route 1.1.1.1, chúng ta sẽ thấy route này được học từ RR-Client:

show route detail

Kiểm tra các tuyến mà R2 quảng bá cho R3, chúng ta có thể thấy R2 đã quảng bá tuyến 1.1.1.1 của R1 cho R3.

kiểm tra các route mà R2 quảng bá cho R3

Kiểm tra trên R3, chúng ta có thể thấy R3 đã nhận được tuyến 1.1.1.1 của R1

show ip bgp trên router R3

Tuy nhiên trong trường hợp này R3 chưa ping được đến IP 1.1.1.1 trên R1 và chưa đưa vào bảng định tuyến của R3. Trong bài lab này mình chỉ hướng dẫn về Route Reflector, các bạn có thể xem lại phần cấu hình BGP căn bản nếu cần test ping đến ip 1.1.1.1.

Chúc các bạn thành công!

Lê Văn Tuấn

Là chuyên gia trong lĩnh vực Network System, Security, Server.. Có kinh nghiệm nhiều năm tư vấn giải pháp mạng, triển khai các giải pháp CNTT và phân phối thiết bị mạng Switch, Wifi, Router, Máy chủ Server, Lưu trữ Storage, Tường lửa Firewall, Video Conferencing, Module quang, Load Balancing. Hiện tại tôi là Founder và Managing Director công ty TNHH Công Nghệ Việt Thái Dương (CNTTShop.vn).

Bình luận bài viết!

Có 0 bình luận:
Chuyên mục chính
Bài viết liên quan