BGP Peer Group là gì? Hướng dẫn cấu hình BGP Peer Group
Trong các bài viết này, chúng ta sẽ cùng tìm hiểu về BGP Peer Group là gì, lợi ích khi sử dụng BGP Peer Group và cách cấu hình BGP Peer Group trên Router Cisco hoặc NX-OS.
BGP Peer Group là gì?
BGP Peer Group là 1 tập hợp hay 1 nhóm các BGP neighbors có chung outbought policy, còn inbought policy có thể khác nhau. Với các Neightbor có chung Outbought Policy, chúng ta có thể tạo 1 group để nhóm các neightbor này lại, sau đó các chính sách chúng ta chỉ cần cấu hình trên group mà không phải add vào từng neightbor.
Lợi ích khi sử dụng BGP Peer Group
Lợi ích chính khi sử dụng BGP Peer Group là chúng ta có thể giảm tải cho hệ thống, cụ thể là giảm tài nguyên về CPU và memory cần thiết trong quá trình tạo các bản update. BGP Peer Group giảm tải tài nguyên hệ thống bằng cách cho phép thiết bị kiểm tra bảng định tuyến chỉ 1 lần và các bản update được sao chép cho tất cả các member trong group thay vì thực hiện riêng lẻ cho từng neightbor. Nếu số lượng BGP peer, số lượng prefixes trong bảng và số lượng prefixes quảng bá cho neightbor càng lớn thì BGP Peer Group càng hiệu quả khi giảm rất nhiều các bản update.
Ngoài ra thì BGP Peer Group cũng giúp đơn giản hóa cấu hình BGP. Do vậy, khi thiết kế BGP, các bạn nên nhóm các BGP Peer có cùng outbought policy thành 1 group.
Cấu hình BGP Peer Group trên Router Cisco, NX-OS
Mình sẽ dựng 1 mô hình đơn giản gồm 5 router, trong đó R1, R2, R3, R4 có chung BGP AS là 65000. R1 sẽ là route reflector, còn R2, R3, R4 là RR client. Router R6 sẽ chạy eBGP vơi R1, mình cắm thêm để các bạn thấy được lợi ích của việc đơn giản hóa cấu hình khi sử dụng BGP Peer Group.
Trước tiên mình sẽ cấu hình trên các router R2, R3, và R4. Trên các router này chúng ta chỉ cần tạo neightbor với R1 và quảng bá các tuyến vào BGP thôi. Các bạn cấu hình tương tự cho các router khác.
R2(config)#router bgp 65000
R2(config-router)#neighbor BGP peer-group
R2(config-router)#neighbor 1.1.2.1 remote-as 65000
R2(config-router)#network 20.0.0.0 mask 255.255.0.0 |
Tiếp theo mình sẽ cấu hình trên router R1. Trong ví dụ này thì mình sẽ cho các router R2 R3 R4 có chung policy với nhau nên mình sẽ nhóm cả 3 router này vào chung 1 Group. Router R1 sẽ là RR, và mình sẽ cấu hình next-hop-selt cho các tuyến từ R6.
R1(config)#router bgp 65000
R1(config-router)#neighbor BGP peer-group //Tạo group tên là BGP
R1(config-router)#neighbor BGP remote-as 65000 //Cấu hình remote-as cho group
R1(config-router)#neighbor BGP route-reflector-client //Các neightbor trong group sẽ là RR Client
R1(config-router)#neighbor BGP next-hop-self
R1(config-router)#neighbor 1.1.2.2 peer-group BGP //Assign các neightbor vào group BGP
R1(config-router)#neighbor 1.1.3.2 peer-group BGP
R1(config-router)#neighbor 1.1.4.2 peer-group BGP
R1(config-router)#neighbor 172.16.0.1 remote-as 65001 |
Ở bảng bên dưới, bên trái là cấu hình BGP khi không sử dụng BGP peer group, bên phải là cấu hình khi sử dụng BGP peer group. Các bạn có thể so sánh, nếu như số lượng neightbor, policy, và các thiết lập cho neightbor càng lớn thì sẽ càng phức tạp và lặp đi lặp lại các thuộc tính cần cấu hình nếu như chúng ta không sử dụng BGP peer group.
router bgp 65000
neighbor 1.1.2.2 remote-as 65000
neighbor 1.1.3.2 remote-as 65000
neighbor 1.1.4.2 remote-as 65000
neighbor 1.1.2.2 next-hop-self
neighbor 1.1.3.2 next-hop-self
neighbor 1.1.4.2 next-hop-self
neighbor 1.1.2.2 route-reflector-client
neighbor 1.1.3.2 route-reflector-client
neighbor 1.1.4.2 route-reflector-client |
router bgp 65000
neighbor BGP peer-group
neighbor BGP remote-as 65000
neighbor BGP route-reflector-client
neighbor BGP next-hop-self
neighbor 1.1.2.2 peer-group BGP
neighbor 1.1.3.2 peer-group BGP
neighbor 1.1.4.2 peer-group BGP |
R6 thì mình sẽ cấu hình eBGP với R1 và quảng bá các tuyến vào eBGP.
R6(config)#router bgp 65001
R6(config-router)#neighbor 172.16.0.2 remote-as 65000
R6(config-router)#network 1.1.1.1 mask 255.255.255.255
R6(config-router)#network 2.2.2.2 mask 255.255.255.255
R6(config-router)#network 3.3.3.3 mask 255.255.255.255 |
Kiểm tra cấu hình
Để kiểm tra, các bạn có thể sử dụng lệnh show ip bgp peer-group BGP
Các bạn có thể thấy neighbor là group mình vừa tạo, đang chạy iBGP, chúng ta cũng có thể tạo group cho cả eBGP. Member là các router R2 R3 R4.
Cấu hình Policy cho BGP Peer Group
Giờ mình sẽ thử tạo 1 kịch bản để quảng bá route. Trên R6 mình sẽ gán thêm community là 65001:11 cho tuyến 1.1.1.1/32 để mình có thể lọc tuyến trên R1 khi quảng bá vào iBGP.
Trên R6 mình sẽ cấu hình 1 route-map để add thêm community 65001:11 vào tuyến 1.1.1.1 khi quảng bá sang cho R1.
R6(config)#ip bgp-community new-format
R6(config)#access-list 10 permit 1.1.1.1 /32
R6(config)#route-map COMMUNITY permit 10
R6(config-route-map)#match ip address 10
R6(config-route-map)#set community 65001:11
R6(config)#router bgp 65001
R6(config-router)#neighbor 172.16.0.2 send-community
R6(config-router)#network 1.1.1.1 mask 255.255.255.255 route-map COMMUNITY |
Mình sẽ clear BGP để BGP gửi lại updates.
Trên R1, các bạn bật ip bgp-community new-format và kiểm tra lại tuyến 1.1.1.1
OK, tuyến 1.1.1.1 đã được add thêm community 65001:11
Giờ mình sẽ tạo 1 route-map để deny các tuyến có community này không quảng bá cho R2, R3, R4.
R1(config)#ip community-list 10 permit 65001:11
R1(config)#route-map NO-COMMUNITY deny 10
R1(config-route-map)#match community 10
R1(config)#route-map NO-COMMUNITY permit 20
R1(config)#router bgp 65000
R1(config-router)#neighbor BGP route-map NO-COMMUNITY out |
Mình sẽ clear bgp cho peer-group. Nếu không sử dụng BGP peer group, các bạn cần phải clear toàn bộ neightbor (cả R6) hoặc phải có 3 lệnh clear cho 3 neightbor R2 R3 R4. Với BGP Peer Group thì chúng ta chỉ cần 1 lệnh cho cả 3 neightbor.
R1#clear ip bgp peer-group BGP soft out |
Giờ mình sẽ kiểm tra trên Router R2 R3 R4. Các router này đã không còn tuyến 1.1.1.1 từ R6.
Nếu không sử dụng Peer-group, các bạn sẽ cần add route-map này vào tất cả neightbor không muốn nhận được tuyến, điều này làm cho file cấu hình dài hơn và phức tạp hơn.
OK như vậy là mình đã hướng dẫn các bạn cấu hình BGP Peer-group. Nếu các bạn có yêu cầu hướng dẫn cấu hình tính năng nào, hãy để lại comment, CNTTShop sẽ hướng dẫn trong thời gian sớm nhất.
Chúc các bạn thành công!
Bình luận bài viết!