PDA

View Full Version : Cách dùng route-map trong BGP???



tv04dth1
24-12-2008, 05:16 PM
Mình có mô hình:
RTA---RTB---RTD---RTE---RTC
RTA---RTB---RTF---RTC.

Giờ mình muốn 1 địa chỉ source nằm trong mạng lan của RTA tới 1 địa chỉ bất kỳ ở ngoài nào theo 1 route do ta chỉ định thì phải cấu hình ntn trên RTB. Thanks!! (:|

iesp
25-12-2008, 06:26 PM
Ban co the hoi ro rang hon duoc khong?

vnpro-test
26-12-2008, 01:05 PM
Mình có mô hình:
RTA---RTB---RTD---RTE---RTC
RTA---RTB---RTF---RTC.

Giờ mình muốn 1 địa chỉ source nằm trong mạng lan của RTA tới 1 địa chỉ bất kỳ ở ngoài nào theo 1 route do ta chỉ định thì phải cấu hình ntn trên RTB. Thanks!! (:|

Ý của tv04dth1 chưa rõ lắm, theo tôi thì mình có thể chỉ định neighbor của mình vào những route BGP của mình quảng bá qua cho neighbors đó qua chính xác đường mình mong muốn, nhưng với điều kiện neighbor của mình phải hỗ trợ. Mà rõ hơn ở đây dùng MED, nhưng thuộc tính này quá yếu, thường ít sử dụng lắm.

Do đó nếu mạng Lan của mình ping một máy thuộc RTC nhưng muốn cho packet sẽ trở về trên đường dài hơn [RTA---RTB---RTD---RTE---RTC] thì ta có thể dùng thuộc tính MED chỉ định neighbor RTD sẽ ưu tiên hơn so với RTF.

Còn nếu theo ý của bạn thì mình hiểu vầy, mình có thể chỉ định route của mình đi tới bất cứ router nào mình muốn qua một đường do mình chỉ định. Tôi nghĩ nếu như vậy thì sẽ không làm được vì nếu đã ra đến bên ngoài thì do neighbor mình chỉ định đường đi chứ không phải chính mình chỉ định nữa.
Vd: như mô hình trên của bạn nhưng nối thêm [RTE-RTX-RTC] và mình muốn mạng LAN mình sẽ đi qua RTX thay vì đi qua 2 đường kia.

Nhưng đầu ra của router thì mình có thể chỉ định bằng thuộc tính weight [của cisco] để cho route chỉ đến RTD [ thay vì đến RTF do đến RTF ngắn hơn chẳng hạn]
Hoặc local reference nếu RTD và RTF thuộc hai AS khác nhau.

tv04dth1
26-12-2008, 02:01 PM
ý mình là có thể chỉ định cụ thể đường đi từ 1 địa chỉ source (1 máy trog mạng Lan của RTA) đến 1 địa chỉ bất kỳ ở ngoài.
Chẳng hạn từ trong mạng Lan của RTA (10.0.0.1) đến:
+ Đích là RTC (4.4.4.4) theo đường đi (A->B->D->E->C)
+ Đích là RTD (6.6.6.6) theo đường đi (A->B->F->C->E->D)
Nhưng chỉ được cấu hình trên RTB và RTF(cùng AS), tất cả các Router còn lại, mỗi Router nằm trên 1 AS độc lập.

Theo mình thì đối với TH1: Trên RTB mình sử dụng route-map với neighbor là RTA.
access-list 101 permit ip 10.0.0.1 0.0.0.0 4.4.4.4 0.0.0.0
route-map xx permit
match ip address 101
set next-hop địachỉcủaRTD

Nhưng vẫn không được (vì mặc định BGP sẽ chọn đường có AS path ngắn hơn (A->B->F->C)). Mong các bro chỉ giúp!!

phamminhtuan
26-12-2008, 06:13 PM
Hình dưới này đúng ý bạn không?
http://img380.imageshack.us/img380/8518/hinhhayrm1.jpg (http://img380.imageshack.us/my.php?image=hinhhayrm1.jpg)

Nếu đúng thì ta có thể cấu hình nhiều cách mà cụ thể mình post 2 cách:

Trong hình trên nếu muốn làm được như bạn nói thì trước tiên:
- Ta phải “RB# show ip bgp” xem route đến từ router D [6.6.6.6] có được RB học qua 2 đường hay không?

Cách 1: làm trên RF
RF#
router bgp 1

neighbor RB remote-as 1
neighbor RB next-hop-self
neighbor RC remote-as 4
neighbor RC route-map localprefer in

route-map localprefer permit 10
match as-path 1
set local-preference 200
route-map localprefer permit 20

ip as-path access-list 1 permit _4 3 2_ [Do route 6.0.0.0 qua 3 AS 4, 3, 2]

Ở đây ta cho tất cả những route thuộc AS 2 sẽ đi A->B->F->C->E->D [còn nếu muốn cụ thể route nào nữa thì bạn cứ dùng ACL để cho vào thêm câu route-map]



Cách 2: làm trên RB

RB#
router bgp 1
neighbor RD remote-as 2
neighbor RF remote-as 1
neighbor RF route-map setweight in

access-list 1 permit 6.0.0.0 0.255.255.255

route-map setweight permit 10
match ip address 1
set weight 10
route-map setweight permit 20

Có thể làm bằng cách lọc AS-PATH như trên cũng được.

Route còn lại thì cũng làm tương tự tùy theo đường bạn muốn chọn.

tv04dth1
07-01-2009, 05:50 PM
Thanks logmeinvietnam nhiều. :X