Tác giả: Đặng Quang Minh bgp nâng cao xây dựng network dùng ibgp



tải về 93.86 Kb.
Chuyển đổi dữ liệu06.07.2016
Kích93.86 Kb.
#21

BGP NÂNG CAO

Tác giả: Đặng Quang Minh

BGP NÂNG CAO

Xây dựng network dùng iBGP

Mặc dù BGP là một giao thức ngoại vùng, nó có hai phiên bản: BGP nội (iBGP) và BGP ngoại (eBGP). Sự khác nhau phụ thuộc vào chức năng của giao thức định tuyến. Router sẽ xác định khi nào thì một BGP sẽ là eBGP hoặc là một iBGP bằng cách kiểm tra giá trị AS được gửi trong thông điệp open-message. eBGP sẽ tương thích với các yêu cầu chung của một giao thức ngoại vùng. EBGP sẽ gửi các thông tin định tuyến giữa các AS khác nhau. Vì vậy, router ở biên giới các AS là eBGP router. iBGP được dùng trong các AS. IBGP chuyển các thông tin đến tất cả các BGP router bên trong domain và đảm bảo rằng tất cả các router có chung một hiểu biết về các mạng hiện có. IBGP được dùng giữa các router trong cùng một AS.


Để thiết kế và triển khai BGP chính xác, có một vài đặc điểm của BGP cần phảI được hiểu. iBGP không nhất thiết phải kết nối trực tiếp về mặt vật lý. Không giống như RIP hoặc OSPF hoặc IP v.6, các router chạy iBGP không cần phải kết nối trực tiếp trên cùng một hạ tầng mạng. Một số giao thức khác, chẳng hạn như OSPF sẽ định tuyến các gói BGP giữa các iBGP router.

Hình 8-1: Các AS của BGP


Thông qua các kết nối logic, TCP sẽ route các gói đi qua các AS bởi các bảng định tuyến được duy trì bởi OSPF. Để BGP có thể truyền các thông tin định tuyến vào bên trong AS, nó có thể dùng redistribute từ BGP vào IGP. Quá trình redistribute này có thể rất phức tạp.
Một iBGP sẽ truyền một route đến BGP neighbor theo hai điều kiện sau:
Điều kiện 1: Một route được truyền bởi router bằng một trong những phương thức sau:

·        thông qua lệnh network

·        được redistribute từ một IGP

·        được redistribute từ tuyến đường tĩnh

Điều kiện 2: Nếu route được quảng bá là tuyến đường tĩnh
Nếu một route được học từ một update từ một BGP peer trong cùng một AS, một router BGP có thể truyền route này chỉ đến eBGP. Bởi vì iBGP không có chuyển những cập nhật mà nó học từ iBGP peers, nó cần phải kết nối fully-mesh với nhau để có đầy đủ kiến thức. Tuy nhiên, một mạng fully-mesh thì sẽ không có khả năng mở rộng vì tất cả các router trong một AS phải thiết lập peer với nhau.
Luật synchronization

Luật đơn giản nói rằng trước khi một iBGP có thể truyền một route vào một AS khác, route đó phải được biết trên toàn AS của nó. Nói cách khác, một giao thức định tuyến IGP phải được đồng bộ (synchronized) với BGP. Luật sync này là được bật ON ở chế độ mặc định và nó chỉ nên được tắt nếu tất cả các routers trong AS này chạy BGP.

Các router BGP có bảng định tuyến và BGP table riêng biệt. Luật synchronization được phát biểu như sau: Một route được học từ một router IBGP láng giềng (tức là route này đã có trong BGP table) chỉ được đưa vảo bảng định tuyến hoặc quảng bá (advertise) tới BGP peer khi nó đã được biết tới nhờ một IGP. Khi một router BGP nhận một tuyến IBGP thì nó phải xem trong bảng định tuyến IGP đã có đường đi đến mạng đó chưa, nếu có thì mới xem tuyến đó có giá trị và có thể sử dụng hoặc gởi cho các BGP peer khác. Điều này là cần thiết để đảm bảo các router dọc đường không loại bỏ các gói tin do không có tuyến.

Hình 8-2: Luật sync



Trong hình vẽ trên, nếu transit AS chỉ có các router ngoài rìa chạy iBGP, ta cần phải dựa vào các IGP để mang traffic giữa các router iBGP. Vì vậy, IGP cần phảI có các thông tin này trong bảng định tuyến để có thể hoàn tất việc này. AS400 và AS800 dùng AS200 như là transit AS. Theo luật sync, router sẽ gửi các cập nhật đến AS 800 sẽ không truyền network 56.0.0.0 được quảng bá bởi AS 400 trừ phi OSPF có đầy đủ thông tin về network 56.0.0.0. Nói cách khác, AS800 có thể gửI traffic đến 56.0.0.0 sẽ bị mất trong AS200 bởi vì nếu không có thông tin trong bảng định tuyến, nó sẽ không có khả năng đẩy traffic đến địa chỉ đích phù hợp.


Trong một mạng mà có IGP và IBGP chạy song song thì vẫn không ảnh hưởng gì cả. Các IBGP cần phải được full-meshed và để một router có thể biết được cách đến được IBGP peer của nó , nó phải dựa vào IGP. Trong bảng định tuyến của một router sẽ có cả các route của BGP và IGP , do đó để tất cả các router trong mạng đều biết đường đi đến tất cả các net work ta phải thực hiện redistribute , hoặc quảng cáo net work đó ở một router trong mạng. Tùy theo topo của mạng mà ta có những giải pháp cụ thể.

Trong một vài trường hợp, việc tắt synchronization là cần thiết. Các trường hợp này là:

-         Tất cả các Router trong AS đều chạy BGP

-         AS của bạn không phải là 1 transit AS, tức là không advertise routes từ 1 AS sang 1 AS khác.

-         Nếu tất cả các router trong AS là fully-mesh

-         Version 12.2 thì BGP Sync sẽ tắt ở chế độ mặc định.



Aggregate Address

Khi bạn cấu hình aggregate-address mà không dùng thêm một tùy chọn nào, route được sinh ra sẽ không thừa hưởng bất cứ một attribute nào của từng specific route (ví dụ như AS_PATH hoặc community). Khi bạn dùng từ khóa as-set, thuộc tính của từng route thành viên sẽ được lưu lại.

router bgp 300
neighbor 2.2.2.2 remote-as 100
neighbor 3.3.3.3 remote-as 200
neighbor 4.4.4.4 remote-as 400
aggregate-address 160.0.0.0 255.0.0.0 summary-only as-set
!

RouterD#show ip bgp


BGP table version is 2, local router ID is 4.4.4.4
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

Network Next Hop Metric LocPrf Weight Path


*> 160.0.0.0/8 4.4.4.1 0 300 {200,100} i

trong bảng BGP, as-path của aggregate-route đã có thêm các path của từng route thành viên.

A Fully Meshed Network

Luật BGP split horizon nói rằng mặc dù các router không cần kết nối trực tiếp, nó cần phải fully-mesh. Điều kiện này nhằm đảm bảo các mạng phải thấy nhau. Để tránh routing-loop, giao thức BGP phải tuân theo luật split horizon rằng không có update nào học từ một peer bên trong có thể gửi đến một peer khác. Điều này có nghĩa rằng, một network khi được nhận sẽ không phân phối đến các router iBGP khác. Các mạng này chỉ được truyền đến các router BGP trong các AS khác, còn gọi là eBGP peer.


BGP duy trì các thông tin cập nhật bằng cách gửi các update trên các kết nối TCP. Các kết nốI TCP này là một cách xuất sắc để đảm bảo tính chính xác của thông tin, nhưng nhược điểm của nó là tốn nhiều tài nguyên hệ thống. Số kết nối càng lớn, tài nguyên yêu cầu càng nhiều. Một công thức đơn giản như sau:
Sẽ cần n (n – 1) / 2 kết nốI TCP trên một mạng gồm n router BGP.
Như vậy một mạng gồm 10 router sẽ yêu cầu 10 (10 – 1) / 2 = 10 * 9 / 2 = 45 phiên làm việc. Công thức này chấp nhận được trong môi trường có một vài kết nối, tuy nhiên nếu hệ thống mạng là một nhà ISP thì thiết kế trên không phù hợp.
Chi phí quản trị trong mạng fullymesh

Cũng có những phí tổn quản lý trong việc duy trì các mạng kết nối fully-mesh. Ví dụ, mỗi lần có một router BGP mới thêm vào, số kết nối phải thiết lập cũng sẽ tăng lên nhiều lần tương ứng. Đối vớI TCP, không chỉ phải duy trì các kết nối rất tốn tài nguyên mà còn là các cập nhật – updates phải đi trên các kết nối này. Nếu tất cả các router kết nối với tất cả các router khác, một số lượng lớn thông tin sẽ được gửi đi trùng lắp.



Hình 8-3: Cấu hình fullmesh cho iBGP

Thiết kế và cấu hình một mạng iBGP


Vấn đề hạn chế khả năng mở rộng trong một mạng fully meshed iBGP có thể được giải quyết bằng các giải pháp thiết kế. Các giải pháp về cấu hình sẽ cho phép ta bỏ qua luận các iBGP phải được full mesh. Các lệnh mới này cho phép ta phát triển một mạng hub-and-spoke để đơn giản hóa các kết nối TCP. Giải pháp được giới thiệu trong phần này là giải pháp dùng route reflector.
Route Reflectors
Một route reflector là một router được cấu hình để chuyển những routing update đến các router láng giềng hoặc các router chạy BGP bên trong một AS. Các router iBGP cần phải được chỉ ra như là client trong khi cấu hình. Khi một client gửi một update đến route-reflector, nó sẽ chuyển update đó đến các router client khác. Đặc biệt, route-reflector định nghĩa luật split horizon. Lụât này nói rằng một iBGP router sẽ không truyền một route được học từ một router láng giềng trong cùng một AS. Route Reflector và client sẽ đòi hỏi một quan hệ peer đầy đủ bởi vì route reflector sẽ gửi các cập nhật từ các client khác nhưng việc thiết lập peer giữa các client là không cần thiết.
Một route-reflector sẽ kết nối đến các peers mà nó không đẩy route đến. Từ quan điểm của route-reflector, các neighbor này được gọi là non-clients. Các router nonclients phải được kết nối fully-meshed với các route-reflector và với các non-client khác. Khi một router đã cấu hình như một route-reflector, nó sẽ đẩy những đường đi được học từ các iBGP khác chỉ đến các route-reflector clients và tới các iBGP/eBGP neighbors. Điều này có nghĩa là một thiết kế hub-and-spoke có thể được triển khai trong một AS giữa các iBGP peers, như vậy giảm thiểu số session giữa các routers. Cả route-reflector và các client của nó hình thành nên một đơn vị để chia sẽ thông tin. Đơn vị này gọi là cluster.
Một Autonomous System có thể được chia ra thành các cluster, trong các các cluster sẽ có các route-reflector được chỉ định và cấu hình. Phải có ít nhất một route-reflector trong mỗi cluster. Nếu một route-reflector kết nối đến các route reflector khác, route-reflector phải được fully-meshed. Điều này nhằm đảm bảo các bảng iBGP routing là đầy đủ. Khi một route-refletor chuyển đi một update, thuộc tính Originator_ID sẽ được thiết lập. Đây là BGP routerID của router đã tạo ra đường đi. Nếu router này nhận lạI bản update đó, router sẽ thấy ID của chính nó và sẽ bỏ qua packet. Điều này nhằm ngăn ngừa khả năng routing loop. Nếu có nhiều route-reflector trong cluster, các router sẽ phân biệt với nhau bằng clusterID. Thông số này phục vụ cùng một mục đích như thuộc tính Originator_ID để ngăn ngừa routing loops.
Với cách dùng route-reflector, router đóng vai trò route-reflector sẽ tốn nhiều tài nguyên hơn. Nếu cấu hình route-reflector không chính xác, nó có thể gây ra routing-loop. Có nhiều mức route-reflector có thể được cấu hình bằng cách tạo ra các thiết kế theo thứ bậc. Các router không là thành phần của route-reflector sẽ không bị ảnh hưởng trong những thay đổi về thiết kế và những thay đổi về quá trình truyền các cập nhật. Thay vào đó, các router này sẽ không nhận biết được bất cứ thay đổi nào vì nó vẫn nhận được các update mà nó cần. Bản thân các routing update cũng không bị thay đổi bởi vì không có sự thay đổi nào trong giá trị các thuộc tính được mang trong các routing update.
Chính vì các đặc điểm trên, quá trình chuyển đổi thiết kế một hệ thống mạng nào đó sang dạng dùng route-reflector thì rất dễ dàng. Một thiết kế quan trọng là bản thân các route-reflector trong một AS cũng phải fully-meshed. Ngoài ra, một route-reflector này có thể là client cho một route-reflector khác. Thiết kế như vậy khá phức tạp và yêu cầu xem xét cẩn thận bởi vì khi các route-reflector được cấu hình và split horizon bị disable, không còn một cơ chế nào để bảo vệ routing loop.
Hình 8-4: Thiết kế Route-reflector

Các lợi ích của route-reflector bao gồm

-         Khả năng mở rộng mạng

-         Thiết kế mang tính cấu trúc cao

-         Giảm traffic trên mạng.

-         Giảm bộ nhớ và CPU cần thiết để duy trì các phiên TCP session trên các máy iBGP peers.

-         Hội tụ nhanh hơn và mạng trở nên đơn giản hơn bởi vì có đến hai giao thức định tuyến được dùng: iBGP cho các thông tin định tuyến bên ngoài đi qua AS; IGP cho các router bên trong một AS.
Hình 8-5: Cấu hình các route-reflector



Hoạt động của RR:
Một RR đơn giản giống như một tấm gương để phản hồi các update từ các client đến các client khác mà không yêu cầu một mạng phải fully-meshed.
Khi một RR nhận được một cập nhật:

-         Client sẽ chuyển update đó cho router láng giềng của nó, trong trường hợp này là RR

-         Một cập nhật từ client được nhận từ RR và cập nhật sẽ được chuyển đến các RR clients cũng như nonclients. Thông số originatorID ban đầu sẽ bị loại trừ ra khỏi cập nhật.

-         Nếu có nhiều đường đi nhận được từ RR, đường đi tốt nhất sẽ được chọn thông qua RR.

-         Router duy nhất mà có update chuyển đến nó là nguồn gốc của route

-         Một nonclient router sẽ chuyển các cập nhật tớI các láng giềng của nó, có thể là một RR.

-         Một RR nhận một update từ một router nonclient và update chỉ được chuyển đến clients

-         RR sẽ cập nhật cả client và non-clients.


Route Refresh
Sau khi thực hiện bất kỳ một cấu hình BGP nào, cần phải reset các phiên làm việc TCP sao cho các thay đổi có hiệu lực. Điều này là do các quá trình BGP lưu trữ chỉ những tiền tố prefix áp dụng cho một chính sách liệt kê trước. Nếu chính sách thay đổi, các phiên TCP phải được kết thúc và kết nối lại với các đặc điểm mới. Có thể dùng các lệnh sau
Router#clear ip bgp *
hoặc để gửi một BGP update đến một neighnor nào đó:
Router#clear ip bgp neighbor-address in
Cũng có thể cấu hình BGP để lưu các mạng trước khi policy thay đổi. Tác vụ này rõ ràng đòi hỏI nhiều bộ nhớ, nhưng nó cho phép các cấu hình mới được hiện thực mà không hủy các session hiện có. Lệnh dưới đây áp dụng cho từng neighbor và chỉ áp dụng cho các cập nhật theo chiều inbound
Router#neighbor neighbor-address soft-configuration inbound

Router#clear ip bgp neighbor-address soft [inbound]


Peer Groups

Nếu không có peer-group, tất cả các iBGP peer phải được fully meshed để nhận cùng một update. Điều này có nghĩa là mọi iBGP router đều thực hiện cùng một tính toán, gây lãng phí CPU và giới hạn khả năng mở rộng của iBGP. Khi peer group được cấu hình, tất cả các router bên trong peer group có cùng chính sách đối với bên ngoài, nhưng vẫn cho phép các chính sách đi vào khác nhau được cấu hình trên nhóm. Có nghĩa là một cập nhật sẽ được tạo ra cho cả nhóm. Kết quả là

-         Phí tổn để quản lý được giảm đi bởi vì cấu hình là đơn giản hơn, giảm thiểu khả năng bị lỗi

-         Ít đòi hỏi tài nguyên CPU, mạng hội tụ nhanh, ổn định và tin cậy.

Kiểm soát BGP Traffic
Các BGP update có thể được kiểm soát. Nhìn chung, trong các giao thức định tuyến, kiểm soát các cập nhật là một việc tốt. Việc kiểm soát các cập nhật giúp cho đơn giản hoá hệ thống mạng và dể dàng bảo trì. Việc thiết kế các thông tin định tuyến được chuyển đi như thế nào cũng được xem là một tác vụ cơ bản của bảo mật mạng và điều này giúp cho giảm nguy cơ bị routing-loop.

Có ba cách để áp đặt PBR trong BGP:

-         Ra quyết định dựa trên thuộc tính AS_PATH, thuộc tính community hoặc prefix

-         Từ chối hay chấp nhận các routes được chọn

-         Thiết lập các thuộc tính để ảnh hưởng đến quá trình chọn lựa đường đi.
Quá trình từ chối hay chấp nhận các routes yêu cầu một vài dạng của filtering thông qua các ACL. Tác vụ filtering không chỉ được dùng trong PBR mà còn để kiểm soát traffic trong mạng. Có ba dạng filtering trong Cisco router:
Access-list cho AS_PATH

Được dùng để lọc các AS. Một ACL được dùng trong BGP sẽ lọc các update được gửi từ một router peer trên AS path.


Prefix list

Được dùng để lọc các prefix, đặc biệt trong quá trình redistribution. Từ Cisco IOS v.11.2, các ISP sử dụng các prefix-list là một dạng khá hiệu quả của filtering. Cơ chế dùng prefix-list dựa trên prefix của một địa chỉ.


Distribute lists

Distribute-list được dùng để lọc các cập nhật. Mặc dù distribute-list thường được dùng trong redistribution, công cụ này không chỉ dành riêng cho quá trình redistribution. Nó có thể áp dụng cho các traffic theo chiều inbound và chiều outbound từ bất cứ các peer nào. Cả prefix-list và distribute-list đều lọc dựa trên địa chỉ mạng chứ không dùng AS_PATH.


Route maps

Route map được dùng để định nghĩa chính sách định tuyến. Một route-map là một access-list phức tạp qua đó router hoạt động khi một match được nhận dạng. Route map được dùng trong BGP để xác lập các thuộc tính của BGP để chọn ra đường đi tốt nhất.


Prefix List hoạt động như thế nào?

Prefix-list chỉ tìm kiếm trên phần network của một địa chỉ nên quá trình tìm kiếm là rất nhanh. Điều này đặc biệt quan trọng trong khi tìm kiếm những bảng định tuyến kích thước lớn trong BGP. Một thuận lợi khác của prefix-list là khả năng soạn thảo. Mặc dùng trong ACL truyền thống vẫn cho phép soạn thảo động (dùng named ACL), prefix-list có thể tạo và sử dụng dễ dàng. Điều này không chỉ đúng với tính năng soạn thảo mà còn với giao diện đã cải tiến.


Trước khi áp dụng một prefix-list vào một quá trình hay một cổng giao tiếp, người quản trị phải định nghĩa các tiêu chí cho access-list. Mỗi dòng trong prefix-list được kết hợp với một chỉ số, tương tự như các dòng trong một chương trình máy tính. Nếu ta không nhập vào chỉ số thứ tự (sequence-number), chỉ số này sẽ được tự động tạo ra, với mỗi lần tăng là 5. Các số không được dùng, chẳng hạn như từ 1 đến 4 cho phép các dòng thêm vào về sau. Ta có thể soạn thảo prefix-list bằng cách chỉ ra chỉ số dòng hoặc sequence-number. Khả năng này là không có trong ACL.
Prefix-list hoạt động bằng cách tìm các prefix trong danh sách match với các prefix đang kiểm tra. Nếu có một match xảy ra, route sẽ được dùng hay bị loại bỏ. Cụ thể, khi có một prefix bị deny hoặc được permit, các luật sau sẽ được dùng
-         Nếu một route là permit, route sẽ được dùng

-         Nếu một route là deny, route sẽ không được dùng

-         Kết thức của mọi prefix-list là một phát biểu ngầm định deny. Như vậy, nếu cho trước một prefix mà prefix này không match với một entry trong prefix-list, prefix sẽ bị deny theo luật mặc định.

-         Nếu có nhiều entry trong một prefix list match với một prefix, entry có chỉ số sequence number nhỏ nhất sẽ được dùng.

-         Router bắt đầu tìm kiếm ở đỉnh của prefix-list, với chỉ số sequence-number bằng 1. Khi một match là tìm thấy, quá trình tìm kiếm kết thúc. Thời gian xử lý sẽ được giảm nếu các điều kiện match/deny được đặt ở đầu của danh sách. Điều này ngăn ngừa việc phải xử lý các điều kiện hiếm khi gặp mỗi khi một route được kiểm tra.

-         Các chỉ số sequence number tự động gia tăng theo mặc định. Để cấu hình sequence-number, dùng thông số seq seq-value trong lệnh ip prefix-list.

-         Chỉ số sequence number không cần thiết chỉ ra khi xóa một dòng trong cấu hình.
Làm thế nào để cấu hình BGP prefix-list?

Dùng lệnh sau để cấu hình prefix-list:


Router(config-router)#ip prefix-list prefix-list-name [seq seq-value] {deny|permit} network/len [ge ge-value] [le le-value]


Thông số (Parameter)

Mô tả (Description)

Prefix-list-name

Tên của prefix-list

[ seq seq-value ]

số thứ tự được gán đến tiêu chuẩn đang định nghĩa

{deny | permit}

Hành động là từ chối hoặc cho phép đối với kết quả

Network/len

chiều dài của prefix phải match

[ge ge] [le le_value]

chỉ ra chiều dài của prefix cần phải match

Để cấu hình một router dùng prefix-list như là filter trong distribute-list, dùng lệnh sau:


Router(config-router)#neighbor {ip address|peer-group} prefix-list prefix-list-name {in|out}
Kết nối Internet dùng BGP

Do là giao thức ngoại vùng, BGP được dùng để kết nối đến Interner và định tuyến traffic trên Internet. Do đó bạn cần phải biết một số tiêu chí thiết kế khi kết nối đến một nguồn tài nguyên khổng lồ như vậy. Khi kết nối Internet, mạng của bạn tham gia vào một hệ thống mạng rộng lớn, vì vậy bạn phải đảm bảo router của bạn không bị quá tải bởi lượng thông tin. Phần này khảo sát hai vấn đề: nhu cầu cho các kết nối dự phòng (còn gọi là multihoming) và nhu cầu ra quyết định sẽ có bao nhiêu thông tin nhận từ Internet.


Kết nối dự phòng ra Internet - Multihoming
Một lượng lớn các traffic trên Internet là để tìm kiếm tài nguyên. Traffic này không chỉ bao gồm email và các phương tiên khác của giao tiếp mà còn truy cập thông tin từ Internet. Người quản trị mạng phải phải thường xuyên kết nối tới Internet. Nếu có nhiều kết nối đến Internet, người ta gọi đây là multi-homing. Nguyên nhân để có nhiều kết nối đến internet thì khá rõ ràng. Nếu dùng nhiều kết nối dự phòng, ta còn có thể triển khai việc chia tải để cải tiến performance của hệ thống mạng. Cơ chế multihoming có thể bao gồm vài kết nối đến cùng một nhà cung cấp dịch vụ hoặc bao gồm nhiều mức dự phòng bằng cách kết nối đến một nhà cung cấp dịch vụ ISP khác. Có các mối quan tâm sau đây khi kết nối đến nhiều hơn một ISP:

-         Mỗi nhà cung cấp dịch vụ có thể không truyền cùng các routes đến từ Internet. Nếu các nhà cung cấp dịch vụ gửi cùng một subnets của các routes được yêu cầu, sẽ có vấn đề lớn phát sinh khi kết nối từ một trong những nhà cung cấp dịch vụ bị rớt.

-         Nếu bạn kết nối đến hai nhà cung cấp dịch vụ khác nhau, vùng AS của bạn có thể trở thành transit AS giữa các ISP. Điều này có thể xảy ra nếu một router trong AS của một nhà cung cấp dịch vụ tìm thấy đường đi đến đích thông qua AS của một nhà ISP khác. Và nếu AS của bạn cung cấp đường đi tốt nhất đến AS của nhà ISP kia.

Cấu hình ở mức ISP là giải pháp cho những mối quan tâm này và nó liên quan đến việc thiết lập dịch vụ. Vì vậy, bạn nên đưa ra yêu cầu về multihome khi thoả thuận với các nhà cung cấp dịch vụ sao cho các ISP nhận biết về nhu cầu cấu hình thêm cho bạn.


Nhận thông tin định tuyến từ Internet
Khi kết nối ra một hệ thống mạng lớn như Internet, vài kế hoạch phải được chuẩn bị kỹ. Đặc biệt, người quản trị cần phải quyết định những updates nào là cần gửi ra thế giới bên ngoài và các router bên trong một AS cần phải biết về thế giới bên ngoài như thế nào.
Có 3 giải pháp để chọn lựa route từ Internet:
-         Chấp nhận chỉ default-route từ tất cả các nhà cung cấp dịch vụ

-         Chấp nhận một phần routes bên cạnh các default-routes từ các nhà cung cấp dịch vụ



-         Chấp nhận toàn bộ bảng định tuyến từ tất cả các nhà cung cấp dịch vụ



Quá trình quyết định thì khá rõ ràng: nó phải cân bằng giữa các tài nguyên mạng và thông tin. Tổng số thông tin càng nhiều, càng nhiều routes có thể được chấp nhận từ các nhà cung cấp dịch vụ.


Routes chấp nhận từ Internet

Bộ nhớ

CPU

IGP chọn đường đi tốt nhất đến default-route

BGP chọn lựa đường đi đến mạng bên ngoài

Đường đi ra bên ngoài có thể hiệu chỉnh thông qua các thuộc tính BGP

AS có gửi tất cả các route đến ISP?

ISP chọn đường đi về AS?

Các default routes chỉ từ các ISP

Thấp

Thấp

Yes

Đi đến gateway gần nhất đang quảng bá đường đi

No

Yes

Yes

Chọn lựa route và default route từ ISP

Trung bình

Trung bình

Yes

Yes: thông thường AS path là thuộc tính chọn lựa đường đi ra Internet

Yes

Yes

Yes

Nhận đầy đủ bảng định tuyến từ ISP

Cao

Cao

Yes

Yes: thông thường thuộc tính AS_PATH giúp chọn lựa đường đi ra Internet

Yes

Yes

Yes



Dùng thuộc tính Local Preference và trọng số weight

Thuộc tính trọng số weight sẽ chọn lựa đường đi ra khỏi router khi có nhiều đường đi đến cùng một địa chỉ đích. Trọng số càng cao, đường đi càng tốt. Lệnh này có tầm vực cục bộ và thuộc tính này sẽ không truyền đến các router khác. Thuộc tính này cũng là của riêng Cisco. Để cấu hình trọng số weight, dùng lệnh sau:


Router(config-router)#neighbor { ip-address | peer-group-name} weight weight
Redistribution giữa IGP và BGP

Trong trường hợp mạng không phải là một ISP, sẽ có tình huống là mạng đó đang chạy một IGP trong một AS. Các đường đi có thể được đưa vào bảng định tuyến từ IGP vào BGP hoặc từ BGP vào IGP.


Quảng bá route từ IGP vào BGP

Đầu tiên, hãy xem xét quá trình quảng bá route vào BGP. Có ba cách để quảng bá bảng BGP với các IGP routes:

-         Dùng lệnh network: lệnh này dùng để quảng bá những routes có trong bảng định tuyến.

-         Redistributing static: mặc dù bất cứ tuyến đường tĩnh nào có thể được redistribute vào BGP, các định tuyến tĩnh thường được dùng để tạo ra các supernet. Định tuyến tĩnh là tóm tắt các địa chỉ, ví dụ các địa chỉ lớp C với giá trị prefix-mask bằng 16 bit. Summary-route sẽ chỉ về next-hop là null0. Khi này sẽ có khả năng tạo ra các lỗ đen (black-hole) có thể làm mất route. Cisco khuyến cáo rằng ta nên dùng lệnh aggregate-address thay cho cách dùng định tuyến tĩnh với null0.

-         Redistribute các route từ IGP: cách này không được khuyến cáo vì sẽ phụ thuộc nhiều vào bảng BGP. Các route iBGP sẽ bị loại bỏ, nếu không routing loop sẽ xảy ra khi các BGP routes được đưa vào IGP.
Quảng bá route từ BGP vào IGP

Phân phối các routes từ Internet vào một hệ thống mạng nhỏ là không hiệu quả. Điều này là do Internet quá rộng lớn và và do kích thước khổng lồ của bảng định tuyến của các router trên Internet. Khi cả khi dùng rất nhiều phép summary và lọc, vẫn có rất nhiều thông tin phải truyền tải. Bởi vì ISP thường chạy eBGP và iBGP rất nhiều, các ISP thường chạy BGP cho các routes bên ngoài và dùng IGP cho các routes bên trong. Không có yêu cầu phải dùng redistribution. Chức năng synchronization thì không cần thiết trong kiểu mạng này vì IGP vẫn chạy theo kiểu full-mesh. Nếu dùng full-mesh hoặc RR, luật synchronization có thể được tắt đi. IGP cần phải mang những routes đi qua các AS đến các BGP khác. Ngoài ra, bất cứ thiết bị nào muốn kết nối đến Internet cần phải có một default-route hoặc các route riêng lẽ đến chuyển traffic. Lúc này nên cấu hình các cơ chế route-filering, nếu không bảng định tuyến sẽ bị quá tải.









tải về 93.86 Kb.

Chia sẻ với bạn bè của bạn:




Cơ sở dữ liệu được bảo vệ bởi bản quyền ©hocday.com 2024
được sử dụng cho việc quản lý

    Quê hương