Các cập nhật tuyến BGP 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 tuyến là việc phải làm. 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 (Policy Based Routing) 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 tuyến đượ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 tác vụ lọc tuyến thông qua các ACL. Tác vụ lọc tuyến không chỉ được dùng trong PBR mà còn để kiểm soát lưu lượng trong mạng. Có ba dạng lọc tuyến 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 cập nhật tuyến gửi từ một router hàng xóm dựa trên AS path.
- Prefix list
Được dùng để lọc các tuyến, đặ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 lọc tuyến. Cơ chế dùng prefix-list dựa trên địa chỉ của một tuyến.
- 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 lưu lượng theo chiều vào và chiều ra từ bất cứ các hàng xóm 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.
Hoạt động của Prefix-list:
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ù 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 phù hợp với các prefix đang kiểm tra. Nếu một điều kiện kiểm tra phù hợp xảy ra, tuyến sẽ được dùng hay bị loại bỏ. Cụ thể, khi có một prefix bị từ chối hoặc được cho phép, các luật sau sẽ được dùng:
- Nếu một tuyến được cho phép, tuyến đó sẽ được dùng - Nếu một tuyến bị từ chối, tuyến đó 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 từ chối tất cả các tuyến. Như vậy, nếu cho trước một tuyến mà tuyến này không phù hợp với một đầu vào trong prefix-list, prefix sẽ bị từ chối theo luật mặc định.
- Nếu có nhiều đầu vào trong một prefix list phù hợp với một tuyến, đầu vào 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 thông tin lọc tuyến phù hợp được 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 tuyến đượ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.
Cấu hình BGP prefix-list
Dùng lệnh sau để cấu hình prefix-list:
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 phù hợp
[ge ge] [le le_value] Chỉ ra chiều dài của prefix cần phải phù hợp
Để cấu hình một router dùng prefix-list như là tác vụ lọc 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 LUẬN
Với sự phát triển ngày càng mạnh mẽ của mạng Internet, đề tài nghiên cứu “Tổng quan giao thức định tuyến BGP trên router Cisco” là đề tài thực tế giúp người đọc tiếp
cận và có hiểu biết cơ bản về cách thức định tuyến giữa các vùng tự trị, một thành phần quan trọng trên Internet . Đề tài góp phần giúp cho tác giả và những người tham khảo: - Hiểu và nẳm được các thuộc tính, giải thuật được sử dụng trong BGP để định tuyến.
- Hiểu rõ vai trò, hoạt động và cấu trúc các thông báo của EBGP và IBGP trong hệ thống mạng ngày nay.
- Các phương pháp giải quyết vấn đề full mesh trong BGP.
- Một số phương pháp được sử dụng để kiểm soát lưu lượng trong BGP.
Mặc dù đạt được một số kết quả nêu trên nhưng do điều kiện thời gian và thiết bị thực nghiệm còn hạn chế nên việc nghiên cứu giao thức BGP trên nền Ipv6 chưa thể được thực hiện.
Đề tài có thể được mở rộng để nghiên cứu và triển khai giao thức BGP cùng các giao thức IGP dựa trên phần mềm mô phỏng GNS3. Việc nghiên cứu hoạt động của BGP trên hệ thống Ipv6 cũng là một vấn đề cần được quan tâm khi hệ thống Ipv4 đang ngày càng cạn kiệt.
[1] CCNP Self-Study, CCNP BSCI Exam Certification Guide, Third Edition. Cisco Press. 2004
[2] CCIE 350-001 Routing and Switching Prep Kit. BareWolf, Inc. 2000 [3] Routing First–Step By Bill Parkhurst. Cisco Press. 2004
[4] http://www.cisco.com [5] http://www.vnpro.org