Please enable JavaScript.
Coggle requires JavaScript to display documents.
Chapter 11: BGP (Border Gateway Protocol), A. Weight (cisco): không được…
Chapter 11: BGP (Border Gateway Protocol)
BGP Fundamental
Nguyên nhân có BGP
BGP mang được nhiều Routes (mạng internet có khoảng 780k routes)
BGP có các policy mà các giao thức khác không có.
BGP giúp gửi traffic trên nhiều path với tỉ lệ khác nhau
Phân loại
IBGP (Internal BGP)
IBGP được sủ dụng trong cùng AS
EBGP (External BGP)
Được sủ dụng giữa các AS
BGP mang được nhiều route và quảng bá chúng qua các AS và để số lượng lớn route đó đc quảng bá trong AS thì phải có IBGP có nhiệm vụ mang các route đó trong 1 AS
Khái niệm
BGP next-hop-self: Thay đổi next-hop khi gửi qua iBGP thành chính next-hop của Router gửi.
BGP Full mesh: tất cả các Router phải thiết lập bgp với nhau
BGP peer: các router thiết lập BGP với nhau
BGP Speaker: Router cấu hình BGP
BGP tables
Loc-RIB: chứa các route có nguồn gốc từ chính nó hoặc từ BGP peer thỏa mãn inbound policy
Adj-RIB-out: Chứa các routes thỏa mãn out-bound policy
Adj-RIB-in: chứa các route ở dạng ban đầu nhận được từ BGP peer
BGP messages
UPDATE
Chứa thông tin các route và thuộc tính liên quan
Chứa thông tin route cần withdraw( xóa tuyến đường )
NOTIFICATION
Được dùng để thông báo cho các router chạy BGP về nguyên nhân gây ra error kết nối
OPEN
thiết lập và hình thành BGP adjacency
có thông tin: AS, Version, BDP ID, Holdtime
KEEPALIVE
Được gửi đi để duy trì kết nối
Định kì gửi 60s
Holdtime = 180s= (3x60s)
Route-refresh
Dùng để làm mới route
Lưu ý:
Để thiết lập được BGP thì các router phải trải qua quá trình bắt tay 3 bước
Các router phải cấu hình dynamic routing hoặc static routing để có thể nhìn thấy nhau và thiết lập bắt tay 3 bước. Không chấp nhận bắt tay khi sử dụng default route
BGP Configuration
Cấu hình IBGP
Ví dụ:
router bgp 123
neighbor 2.2.2.2 remote-as 123
neighbor 2.2.2.2 update-source loopback 0
neighbor 2.2.2.2 next-hop-self
Quy tắc cơ bản
Khi 1 prefix được gửi qua EBGP thì next-hop thay đổi
BGP full mesh: Split Horizon: Prefix học được IBGP ko gửi cho IBGP khác. Để giải quyết vấn đề này ta sử dụng thực hiện IBGP full mesh
BGP next-hop-self: Khi 1 prefix được gửi qua IBGP thì next-hop ko thay đổi, để thay đổi next-hop phải sử dụng next-hop-self
Cấu hình EBGP
Vi dụ:
router bgp 123
neighbor 192.168.24.2 remote-as 123
Để quảng bá mạng:
network 2.2.2.2 mask 255.255.255.255
or
redistribute connected
Khi cấu hình EBGP multihop thì cần cấu hình bổ sung thêm câu lệnh set TTL
Ví dụ: neighbor 5.5.5.5 ebgp-multihop 2
Cấu hình summarization
Ví dụ:
router bgp 123
aggregate-address 192.168.1.0 255.255.255.0 summary-only
Cấu hình summarization mà muốn giữ nguyên AS của các route summary thì sử dụng command:
aggregate-address 192.168.1.0 255.255.255.0 as-set summary-only
Cấu hình quảng bá Default-route
Ví dụ:
router bgp 123
neighbor 192.168.24.2 default-originate
BGP Neighbor States
Idle
Connect
Active
OpenSent
OpenConfirm
Established
Path Attributes
Optional transitive
(thuộc tính ko phải router nào cũng biết và được gửi đi)
A. Aggregator
B. Community
C. Extended community
Optional non-transitive
(thuộc tính ko phải router nào cũng biết và router ko chuyển tiếp)
A. Med
B. Originator ID
C. Cluster List
D. MP Reach NLRI
E. MP Unreach NLRI
Well-know Discretionary
(Router biết và có thể gửi đi hoặc ko theo yêu cầu)
A. Local preference
B. Atomic aggregate
Well-know mandatory
(Router biết, router bắt buộc phải gửi đi theo prefix)
A. AS-Path
B. Next-hop
C. Origin
BGP Filter
Distribute list
Lọc dựa trên prefix và prefix-lengh
Có 2 bước cấu hình:
Định nghĩa ra các routes cần permit hoặc deny sử dụng ACL;
Apply Distribute list vào BGP theo chiều in/out
neighbor <ip-neighbor> distribute-list <ACL> in|out
Prefix list
Lọc dựa trên prefix và prefix lengh
Định nghĩa các routes cần permit hoặc deny sử dụng prefix-list ( có option ge và le)
Apply prefix-list vào BGP theo chiều in/out
neighbor <ip-neighbor> prefix-list <name_prefix-list> in|out
AS path ACL/Filtering
Kĩ thuật lọc dựa trên AS
Có 2 bước:
Định nghĩa các As-path cần permit hoặc deny dựa vào regex ( Regular Expression)
Apply filter-list vào BGP theoc hiều in|out
VD: ip as-path access-list <name_acl> permit ^$
neighbor 192.168.24.2 filter-list <name_acl> in
Route maps
Có 3 bước:
Định nghĩa các mạng/attribute(as-path) cần premit hoặc deny (sử dụng ACL hoặc prefix-list)
Sử dụng Route-map:
Có thể match với bước 1 hoặc match với attribute
Có thể set
Gán Route-map vào BGP theo chiều in|out
BGP Path Selection
Quy tắc đầu tiên: BGP LONGEST MATCH
BGP Best-Path Algorithm
Accumulated Interior Gateway Protocol (AIGP)
Shortest AS_Path: Thông tin AS của prefix. Ưu tiên path có AS ít hơn. Lưu ý: khi set as-path thì set trên neighbor EBGP
Local originated (network statement, redistribution, or aggregation): ưu tiên các route theo thứ tự sau
Routes that were advertised locally
Networks that have been aggregated locally
Routes received by BGP peers
Origin code: Thể hiện nguồn gốc của các route, ưu tiên lựa chọ các route theo thứ tự như sau:
IGP (i)
EGP (e)
Incomplete origin (?): quảng bá bằng lệnh redistribute
Local preference: Có ý nghĩa trong AS, ko quảng bá qua EBGP. Ưu tiên các prefix có giá local-pref cao hơn. giá trị mặc định = 100
MED: thể hiện metric của prefix, là thuộc tính optional non-transitive, đưuojc trao đổi giữa các AS. Ưu tiên giá trị thấp hơn. Lưu ý: Nếu nhận được thuộc tính MED từ eBGP thì nó có thể quảng bá cho iBGP. Ko quảng bá MED cho eBGP khác ngoài AS mà nó nhận được
eBGP over iBGP
Lowest IGP next hop
Oldest eBGP Path
Minimum Cluster List Length
Router ID
Lowest neighbor address
A. Weight (cisco): không được gửi đi giữa các peer thể hiện trọng lượng của prefix cao