Bài 2: Kết nối BGP giữa các AS IPv6
Sử dụng phần mềm router XORP để thiết lập kết nối BGP giữa AS1 & AS2 như hình vẽ bên trên. Các router R4 và R6 là các router biên của các AS. Bài này chỉ tập trung lan tỏa các thông tin định tuyến giữa các router biên nên không sử dụng IGP trong mỗi AS. Thay vào đó, phương pháp router tĩnh được sử dụng. Đương nhiên với router tĩnh, bảng định tuyến của các router nội bộ trong mỗi AS sẽ không được cập nhật tự động, tuy nhiên ta không quan tâm đến vấn đề đó trong bài thực hành này. Các bước tiến hành như sau:
- Bước 1: Cài đặt XORP cho các router.
- Bước 2: Thiết lập cấu hình các router XORP.
- Bước 3: Vận hành BGP với router XORP.
Bước 1: Cài đặt XORP cho các router
eXtensible Open Router Platform (XORP) là router mã nguồn mở hỗ trợ BGP và các giao thức khác. Nó được trường đại học Berkeley xây dựng từ năm 2000 và hiện đang được trường University College Londonđã tiếp tục duy trì. XORP không được cung cấp theo các gói cài đặt sẵn với yum, ta cần dịch và build router này từ mã nguồn. Làm theo các bước hướng dẫn như trên trang web của XORP để tải mã nguồn và cài đặt (http://xorp.run.montefiore.ulg.ac.be/latex2wiki/getting_started):
Cài đặt git và tải mã nguồn XORP. Sau lệnh này, mã nguồn sẽ được tải về đặt trong thư mục xorp trên thư mục home của user.
Cài đặt công cụ biên dịch scons và các thư viện phần mềm cần thiết. Lưu ý rằng trên trang web của XORP đưa ra danh sách các phần mềm để dịch trên phiên bản Linux Fedora, để dịch được trên CentOS, cần các gói phần mềm tương đương:
Dịch và cài đặt XORP:
Bước 2: Thiết lập cấu hình các router XORP
Sau khi cài đặt, chương trình XORP được đưa vào thư mục /usr/local/xorp cùng với một số file hỗ trợ vẫn nằm trong thư mục mã nguồn. Để vận hành router, cần chuẩn bị quyền truy nhập cần thiết cho user root:
XORP được cung cấp với một số file cấu hình chuẩn để triển khai router này với các giao thức routing khác nhau như RIP, OSPF. Các file cấu hình này được để trong thư mục xorp.ct/xorp/rtrmgr/config. Sử dụng file cấu hình bgp.boot và sửa lại tên các giao diện kết nối mạng. File cấu hình GBP trên R6:
[root@R6 ~]# cat ./bgp.boot /* $XORP$ */ interfaces { interface eth4 { vif eth4 { address 2000::3 { prefix-length: 64 } } } } fea { unicast-forwarding6 { disable: false } } policy { policy-statement "static-to-bgp" { term a { from { protocol: "static" } then { accept } } } } protocols { static { route fec7::/64 { next-hop: fec6::1 metric: 1 } route fec8::/64 { next-hop: fec6::1 } } bgp { bgp-id: 10.10.10.10 local-as: 65006 export: "static-to-bgp" peer 2000::1 { local-ip: 2000::3 as: 65004 next-hop: 10.10.10.1 next-hop6: 2000::3 ipv6-unicast: true ipv6-multicast: true ipv4-unicast: true ipv4-multicast: true } } }
File cấu hình BGP trên R4:
[root@R4 ~]# cat ./bgp.boot /* $XORP$ */ interfaces { interface eth3 { vif eth3 { address fec3::2 { prefix-length: 64 } } } interface eth4 { vif eth4 { address 2000::1 { prefix-length: 64 } } } } fea { unicast-forwarding6 { disable: false } } policy { policy-statement "static-to-bgp" { term a { from { protocol: "static" } then { accept } } } } protocols { static { route fec0::/64 { next-hop: fec3::1 } route fec1::/64 { next-hop: fec3::1 } route fec2::/64 { next-hop: fec3::1 } } bgp { bgp-id: 10.10.10.1 local-as: 65004 export: "static-to-bgp" peer 2000::3 { local-ip: 2000::1 as: 65006 next-hop: 10.10.10.2 next-hop6: 2000::1 ipv6-unicast: true ipv6-multicast: true ipv4-unicast: true ipv4-multicast: true } } }
Bước 3: Vận hành BGP với router XORP
Lưu ý rằng các thông tin routing tĩnh phải được khai báo trong cấu hình XORP thay vì khai báo trực tiếp trong kernel Linux như trong bài thực hành số 1. Điều này cho phép XORP nhận được các bảng routinh tĩnh này và gửi đến router biên trong AS khác. Chạy các router XORP (/usr/local/xorp/sbin/xorp_rtrmgr -b ./bgp.boot) với các file cấu hình trên các router biên rồi kiểm tra bảng định tuyến của chúng, các thông tin định tuyến đã được cập nhật từ AS láng riềng:
Các thông tin vận hành BGP có thể được kiểm tra với lệnh show bgp peer: