Tải bản đầy đủ (.doc) (17 trang)

Bài thực hành tìm hiểu về giao thức BGP

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (380.14 KB, 17 trang )

MỤC LỤC

CƠ SỞ LÝ THUYẾT...........................................................................................................2
CÁC BÀI THỰC HÀNH/THÍ NGHIỆM:...........................................................................6

1


NGÀNH HỌC: ĐIỆN THỬ VIỄN THÔNG
HỌC PHẦN: MẠNG MÁY TÍNH
BÀI THỰC HÀNH TÌM HIỀU VỀ GIAO THỨC BGP
CƠ SỞ LÝ THUYẾT
1.1 Tổng quan về giao thức BGP
Như ta đã biết ,Internet được tạo bởi rất nhiều các Autonomous System.
BGP được sử dụng để chia sẻ thông tin định tuyến giữa các AS khác nhau. BGP
sử dụng giao thức vận chuyển tin cậy để trao đổi thông tin định tuyến đó chính là
Transmission Control Protocol (TCP). BGP sử dụng cổng 179 để thiêt lập kết nối.
- BGP hỗ trợ variable-length subnet mask (VLSM), classless interdomain
routing (CIDR), và summarization
1.2 Hoạt động của BGP (BGP Operation)
BGP cho phép truyền thông tin định tuyến giữa các AS khác nhau trải khắp
thế giới. Chúng sử dụng 2 dang BGP để thực hiện điều đó:
- Internal BGP (iBGP)
- External BGP (eBGP)

Hình 1: Kiến trúc liên lạc trong BGP

2


Tất cả BGP speaking device cùng trong 1 AS sẽ sử dụng iBGP để liên lạc


với một BGP speaking khác. Điều đó có nghĩa là chúng ta phải cấu hình full mesh
cho iBGP để hoạt động đúng cách, hay nói cách khác tất cả các thiết bị phải thiết
lập kết nối TCP với nhau. eBGP được sử dụng giữa các BGP speaking device của
các AS khác nhau. Giống như iBGP, BGP speaking device tham gia phải có kết
nối layer-3 giữa chúng, sau đó TCP sẽ được sử dụng bởi eBGP để thiết lập peer
session.
Sau khi thiết lập được peer, BGP speaking device sẽ sử dụng thông tin mà
chúng có được từ những trao đổi để tạo nên một BGP graph. Chỉ một lần BGP
speaking device thiết lập được peer cũng như tạo được BGP graph, chúng mới bắt
đầu quá trình trao đổi thông tin định tuyến. Trong lúc khởi tạo BGP speaking sẽ
trao đổi toàn bộ bảng định tuyến của nó, sau đó chúng sẽ trao đổi thông tin update
từng phần giữa các peer với nhau và trao đổi bản tin KEEPALIVE để duy trì kết
nối.
1.3 Các tham số ảnh hưởng đến việc định tuyến của BGP
Có 2 dạng thông số về tuyến đường trong BGP
→ Well-known:
- mandatory (origin, as-path, Next-hop...)
- Discretionary ( local preference, atomic aggregate...)
→ Option :
- Non-transitive ( MED, Cluster-list…)
- Transitive (Communities…)
Các Tiêu chuẩn lựa chọn tuyến đường tốt nhất trong BGP
• loại bỏ tuyến đường nếu next-hop không đúng.
• Chọn giá trị weight cao hơn ( có giá trị trong 1 router).
• Chọn giá trị local-preference cao hơn ( trong 1 AS).
• Chọn nguồn gốc tuyến đường ( Tuyếnđường sinh ra từ chính router).
• Chọn giá trị AS-path ngắn hơn ( Chỉ so sánh nhiều dài).
• Chọn giá trị origin nhỏ hơn ( IGP• Chọn giá trị MED nhỏ hơn.
• Chọn giá trị eBGP ưu tiên hơn iBGP.

3


• Đối với các tuyến đường iBGP, ưu tiên chọn tuyến đường qua hàng xóm gần
nhất.
• Đối với các tuyến đường eBGP, ưu tiên chọn tuyến đường học được sớm hơn
• Chọn giá trị từ router với giá trị BGP router-ID nhỏ hơn
1.3.1 Thông số AS-path
Thuộc tính AS_path là một thuộc tính Well-know mandatory.
- Nó là tuần tự của các số AS mà route đã truyền qua để đến đích. AS đầu tiên
truyền route sẽ thêm số AS của nó và truyền đi sang eBGP peer tiếp theo. Sau đó
thì mỗi AS mà nhận route này sẽ truyền route này sang eBGP peer khác và gán
thêm số AS của nó vào đầu danh sách các số AS.
Danh sách cuối cùng sẽ là tất cả các số AS mà route đã được truyền đi qua, với
số AS của AS mà khởi tạo route ban đầu nằm ở cuối danh sách.
- BGP sử dụng thuộc tính AS_PATH này trong các cập nhật của nó để đảm bảo
một mô hình không bị loop trên Internet. Mỗi route được truyền đi giữa các peer
sẽ mang theo một danh sách của các số AS mà route đã được truyền qua. Nếu
route được quảng cáo đến một AS mà khởi tạo ra nó, và một AS thấy chính nó là
một phần trong danh sách các số AS và nó sẽ không chấp nhận route này.
- BGP router sẽ chèn thêm số AS của nó khi quảng cáo bảng định tuyến cập
nhật của nó sang một AS khác. Khi route được truyền qua một BGP router có
cùng AS thì danh sách AS_path sẽ giữ nguyên không thay đổi.
1.3.2

Thuộc tính next hop

Là một thuộc tính well-known mandatory, nó tương tự như trong IGP, để đến
được network, thì next hop là địa chỉ IP của router quảng bá route.
- đối với EBGP: thì next hop là địa chỉ ip của láng giềng quảng bá route.

- đối với IBGP : Nơi mà route được quảng từ trong cùng AS thì next hop là địa
chỉ ip của láng giềng quảng bá route. Còn đối với route được quảng bá vào AS từ
EBGP, thì next hop từ EBGP không được thay đổi vào trong IBGP, next hop là địa
chỉ ip của EBGP láng giềng mà nó học được.
- Khi một route được quảng bá trong một môi trường đa truy nhâp(multiaccess) như Ethernet, frame relay, thì next hop là địa chỉ IP của các cổng giao tiếp
của router.

4


1.3.3 Thuộc tính Aggregator và Local-preference
- Thuộc tính Aggregator:
Là một thuộc tính Well-known discretionary. Khi cấu hình aggregation, thì
thuộc tính này cung cấp những thông tin về ID của router và số AS của của router
khởi tạo aggregate route. Thuộc tính này cho phép ISP admin xác định router nào
thực hiện aggregation.
- Thuộc tính Local Preference:
Là một thuộc tính well-known discretionary. Local Preference là một yếu tốđể
xác định sự so sánh giữa các route đến cùng một đích. Route có Local Preference
cao hơn sẽđược chọn làm đường đi tối ưu. Cũng như tên của thuộc tính này, nó chỉ
chuyển đổi nội bô giữa các IBGP peer . Local Preference không quảng cáo sang
EBGP peer.
1.3.4 Thuộc tính weight và thuộc tính MED
- Thuộc tính Weight:
Thuộc tính Weight tương tự như Local Preference, nó sẽ ưu tiên sử dụng route
có giá trị weight cao hơn. Một điều khác ở đây là các thông số weight chỉ có ý
nghĩa nội bộ trong router thôi và nó sẽ không trao đổi với các router khác. Thuộc
tính weight ảnh hưởng đến các route đến từ nhiều nhà cung cấp khác nhau tới một
router, một router có nhiều kết nối tới hai hay nhiều nhà cung cấp. Thông số
weight có tác động cao hơn bất kỳ thuộc tính nào khác.Nó là thuộc tính quan trọng

nhất để xác định route nào ưu tiên được chọn hơn. Weight được cấu hình trên các
router theo từng neighbor một. Thuộc tính này sẽ không truyền sang cho bất kỳ
một router BGP nào khác cả
- Thuộc tính Multiple Exit Discriminator(MED)
MED là một thuộc tính optional nontransitive. MED chỉ cho láng giềng external
về đường đi nào tối ưu hơn để vào trong một AS có nhiều điểm vào.MED có giá
trị thấp sẽ tốt hơn.
- Không giống Local Preference MED được trao đổi giữa các AS, nhưng MED
vào trong một AS thì sẽ không rời khỏi AS này. Khi có một cập nhật vào trong
một AS với một giá trị MED được thiết lập, thì giá trị này được sử dụng để quyết
định chỉ trong nội bộ AS đó thôi.Khi BGP chuyển cập nhật cho một AS khác thì
giá trị của MED được thiết lập về 0.
- MED có thểđược sử dụng ở một AS và ảnh hưởng đến quyết đinh ra khỏi AS
của một AS khác.
5


- Khi một route được khởi tạo bởi một AS, thì giá trị của MED thông thường là
tuỳ theo metric IGP của route. Điều này trở nên hữu dụng khi một khách hàng có
nhiều kết nối đến cùng một nhà cung cấp.IGP metric chỉ ra độ tiêu tốn đến một
mạng để xác định điểm truyền. Một mạng gần điểm xuất A hơn điểm xuất B thì sẽ
có giá trị IGP metric nhỏ hơn. Khi giá trị IGP metric được dịch sang MED, tải đến
một AS có thể vào từ một kết nối gần đích hơn. Chính vì điều này mà MED có giá
trị thấp hơn sẽ được ưu tiên hơn để đến đích. Điều này có thể được sử dụng cho cả
nhà cung cấp và cả khách hàng để cân bằng tải giữa nhiều kết nối giữa hai AS
khác nhau.
CÁC BÀI THỰC HÀNH/THÍ NGHIỆM:
1.4 BÀI THỰC HÀNH SỐ 1:
Tên bài: BTH-HT-BGP-01: Cấu hình BGP cơ bản eBGP
1.4.1 MỤC ĐÍCH – YÊU CẦU:

1.4.1.1 Mục đích
Giúp sinh viên
- Nắm vững các kiến thức cơ bản về BGP
- Có khả năng cấu hình 1 bài lab hoàn chỉnh về eBGP cơ bản
1.4.1.2 Yêu cầu:
- Sinh viên nắm vững kiến thức cơ bản về BGP
- Sinh viên về cơ bản biết sử dụng phần mềm giả lập GNS3
1.4.1.3 Thời gian thực hiện
Khoảng 15-20 phút
1.4.1.4 Nhóm thực hành
Gồm 5 sinh viên
1.4.2 CHUẨN BỊ:
1.4.2.1 Lý thuyết:
- Kiến thức cơ bản về BGP
- Hoạt động của BGP
- Biết được các tham số ảnh hưởng đến việc định tuyến của BGP
1.4.2.2 Mô hình thực hiện:

6


Hình 2: eBGP topology

Điều kiện:
- Máy tính cài đặt phần mêm giả lập GNS3 , có các IOS của router
- Các router R1, R2, R3 cấu hình địa chỉ IP như trong bảng đã cho
1.4.3 NỘI DUNG:
1.4.3.1 Các bước thực hiện:
1. Enable BGP và thực hiện khai báo AS number
Router X(config)#router bgp as-number

2. Quảng bá các địa chỉ loopback vào BGP
Router X(config-router)#network x.x.x.x
3. Thực hiện peer BGP với các router còn lại
Router X(config-router)#neighbor x.x.x.x remote-as x

7


1.4.3.2 Ghi nhận phân tích kết quả:


Kết quả mong muốn

- Thông tin về các địa chỉ loopback được trao đổi giữa các router thông qua
BGP.
- Tuyến lựa chọn với AS path ngắn nhất.


Kết quả thực hiện:
- Kiểm tra kết nối BGP

- Thông tin định tuyến được trao đổi thông qua BGP

Định tuyến lựa chọn với AS path ngắn nhất

8


1.4.4 CÂU HỎI TRẮC NGHIỆM:
1. Cơ chế truyền tải nào được dùng để trao đổi cập nhật bảng định tuyến BGP ?

a) UDP
b) TCP
c) SDP
d) LDAP
2. Bằng cách nào BGP khám phá ra neighbors ?
a) Qua các gói tin broadcast
b) Qua địa chỉ IP của gói tin multicast
c) Qua giao thức hello
d) Neighbors không được khám phá mà thay vào đó là khai báo bằng
tay
3. Cổng (port) nào được dùng để thiết lập phiên trong quá trình trao đổi thông
tin trong BGP ?
a) 21
b) 80
c) 53
d) 167
e) 179
4. Trạng thái của BGP router trong lúc đang thiết lập quan hệ hàng xóm ?
a) Unestablished
b) Down
c) Idle
d) Not connected

9


5. Bước nào sau đây không cần thực hiện trước khi một phiên BGP được thiết
lập ?
a) Hàng xóm phải được khai báo
b) 1 phiên TCP giữa 2 router phải được thiết lập

c) Cơ sở dữ liệu về toàn mạng phải được trao đổi
d)Thông điệp BGP Open phải được trao đổi và kiểm tra
1.5 BÀI THỰC HÀNH SỐ 2:
Tên bài: BTH-HT-BGP-02: Cấu hình iBGP thay đổi các tham số local
prefer & MED
1.5.1 MỤC ĐÍCH – YÊU CẦU:
1.5.1.1 Mục đích:
Giúp sinh viên
- Nắm vững cách cấu hình iBGP, eBGP
- Nắm vững các tham số local prefer & MED trong định tuyến BGP
1.5.1.2 Yêu cầu:
- Sinh viên nắm vững lý thuyết về định tuyến trong BGP và các tham số liên
quan
- Sinh viên nắm vững kiến thức cơ bản về BGP
- Sinh viên về cơ bản biết sử dụng phần mềm giả lập GNS3
1.5.1.3 Thời gian thực hiện
Khoảng 15-20 phút
1.5.1.4 Nhóm thực hành
Gồm 5 sinh viên
1.5.2 CHUẨN BỊ:
1.5.2.1 Lý thuyết (để sinh viên biết trước)
- Kiến thức cơ bản về BGP
- Lý thuyết về định tuyến trong BGP
- Hoạt động của BGP
- Biết được các tham số ảnh hưởng đến việc định tuyến của BGP

10


1.5.2.2 Mô hình thực hiện:


Hình 3: iBGP topology
- Máy tính cài đặt phần mêm giả lập GNS3 , có các IOS của router
- Các router R1, R2, R3 cấu hình địa chỉ IP như trong bảng đã cho
1.5.3 NỘI DUNG:
1.5.3.1 Các bước thực hiện:
1. Cấu hình peer BGP các router tương ứng.
Router X(config-router)#neighbor x.x.x.x remote-as x
2. Thay đổi các giá trị local prefer
Router2(config)#router bgp 2300
Router2(config-router)#neighbor 3.3.3.3 remote-as 2300
Router2(config-router)#bgp default local-preference 500
3. Kiểm tra lại thông tin định tuyến
Router 2# show ip bgp

11


4. Thay đổi các giá trịMED.
Router 1(config)#route-map med permit 10
Router 1(config-route-map)#set metric 50
Router 1(config)#router bgp 100
Router 1(config-router)#neighbor 2.2.2.2 route-map med
out
5. Kiểm tra lại thông tin định tuyến.
Router1#show ip bgp
*Lưu ý :Ta có thông số Local prefer có giá trị trong 1 AS, ở đấy ta không cấu hình
route-map. Giá trị MED được dung để chọn đường đẩy vào trong 1 AS, khác AS
không xét giá trị MED
1.5.3.2 Ghi nhận phân tích kết quả:

1.5.3.3 Kết quả mong muốn
- Thông tin định tuyến thay đổi theo các tham số local prefer & MED cấu hình.


Kết quả thực hiện:
- Thông tin định tuyến trước khi thay đổi local prefer trên R3:

- Thông tin định tuyến sau khi thay đổi local prefer trên R3

- Thông tin định tuyến trước khi thay đổi MED trên R1

12


- Thông tin định tuyến sau khi thay đổi MED trên R1

1.5.4 CÂU HỎI TRẮC NGHIỆM
1. Tham số nào không được mang bên trong một thông điệp BGP Open ?
a) BGP version number
b) Local AS number
c) BGP hold timer
d) Current neighbor state
2. Chức năng bản tin KEEPALIVE trong BGP ?
a) cung cấp nhịp thời gian cho việc trao đổi gói tin
b) Đồng bộ phiên TCP giữa các neighbor
c) Cung cấp cơ chế truyền tin cậy khi sử dụng BGP giữa 2 neighbor
d) Để kiểm tra cấu hình hiện tại của BGP neighbor
3. Chỉ ra đâu là trạng thái của phiên BGP ?
a) OpenConfirm
b) Established

c) Idle
d) OpenSent
e) Active

13


4. Khi đánh lệnh show ip bgp summary , trường “Tb|Ver” nghĩa là gì ?
a) Phiên bản hiện tại của BGP trên router
b) Số route prefixes chứa trong BGP update của router
c) Các thông điệp BGP đều nhận từ neighbor đó
d) Phiên bản mới nhất của BGP database được gửi tới neighbor
5. Thuộc tính nào không thuộc BGP routing updates?
a) Next-hop
b) Local preference
c) Origin
d) AS-path
1.6 BÀI THỰC HÀNH SỐ 3
Tên bài: BTH-HT-BGP-03: Cấu hình BGP route-reflector
1.6.1 MỤC ĐÍCH – YÊU CẦU:
1.6.1.1 Mục đích:
-

Giúp sinh viên có kiến thức mở rộng về cấu hình BGP – BGP routereflector

1.6.1.2 Yêu cầu:
- Sinh viên nắm vững lý thuyết về định tuyến trong BGP và các tham số liên
quan
- Sinh viên nắm vững kiến thức cơ bản về BGP
- Sinh viên về cơ bản biết sử dụng phần mềm giả lập GNS3

1.6.1.3 Thời gian thực hiện
Khoảng 15-20 phút
1.6.1.4 Nhóm thực hành
Gồm 5 sinh viên
1.6.2 CHUẨN BỊ:
1.6.2.1 Lý thuyết (để sv biết trước)
- Kiến thức cơ bản về BGP
- Lý thuyết về định tuyến trong BGP
- Hoạt động của BGP
14


-

Biết được các tham số ảnh hưởng đến việc định tuyến của BGP

1.6.2.2 Mô hình thực hiện:

Hình 4: BGP router-reflector topology
- Máy tính cài đặt phần mêm giả lập GNS3 , có các IOS của router
- Các router R1, R2, R3 cấu hình địa chỉ IP như trong bảng đã cho
1.6.3 NỘI DUNG:
1.6.3.1 Các bước thực hiện:
1. Thực hiện cấu hình peer từ router R1, R2, R3, R4 lên R5
Router X(config)# router bgp 1
Router X(config-router)#neighbor 5.5.5.5 remote-as 1
2. Thực hiện cấu hình peer từ R5 xuống R1, R2, R3, R4
Router X(config)#router bgp 1
Router X(config-router)#neighbor 1.1.1.1 remote-as 1
Router X(config-router)#neighbor 1.1.1.1 route-reflectorclient

Router X(config-router)#neighbor 2.2.2.2 remote-as 1
15


Router X(config-router)# neighbor 2.2.2.2 route-reflectorclient
Router X(config-router)# neighbor 3.3.3.3 remote-as 1
Router X(config-router)# neighbor 3.3.3.3 route-reflectorclient
Router X(config-router)# neighbor 4.4.4.4 remote-as 1
Router X(config-router)# neighbor 4.4.4.4 route-reflectorclient
1.6.3.2 Ghi nhận phân tích kết quả:


Kết quả mong muốn
- Các router có thể học thông tin định tuyến iBGP mà không cần peer full mesh.



Kết quả thực hiện:
Thông tin về BGP trên router R5

Sử dụng lệnh show ip protocol để hiển thị thông tin BGP đã cấu hình trên
router

1.6.4 CÂU HỎI TRẮC NGHIỆM
1. Thông tin nào sẽ được giữ lại khi có sự cập nhật BGP
a) Chỉ những tuyến đường tốt nhất
16


b) Chỉ những tuyến đường được học từ quá trình peer eBGP

c) Tất cả các tuyến nhận từ BGP neighbor
d) Tất cả các tuyến nhận từ giao thức IGP
2. Router sẽ sử dụng cái nào để chỉ ra tuyến tốt nhất , khi ta dùng câu lệnh
show ip bgp
a) i
b) *
c) >
d) B
3. Tiêu chuẩn nào sẽ được dung để xác định tuyến đường , nếu ban đầu ta để
mặc định các tham số khi bắt đầu khởi tạo phiên BGP ?
a) Origin
b) Local preference
c) MED
d) AS-path length
4. Khi có nhiều tuyến đường tới đích cùng tồn tại, đặc điểm nào được router
dùng để chọn ra tuyến tốt nhất ?
a) Cost
b)AD
c)weight
d)metric
5. Trong mô hình BGP route-reflector ,các router ở biên sẽ thiện hiện peer với
router nào ?
a) Những router biên khác
b) Router trung tâm
c) Cả router biên và router trung tâm
d) Không thực hiện peer với router nào cả

17




×