Policy Based Routing (PBR) – Định tuyến theo chính sách

ngày 26-08-2019

Đối với các giao thức định tuyến thông đường như RIP, OSPF, EIGRP…, dữ kiện để chọn ra đường đi tiếp theo cho gói tin là dựa trên địa chỉ đích của gói tin. Tuy nhiên, trong một số trường hợp, người dùng có nhu cầu lựa chọn đường đi dựa trên nhiều thông tin khác ví dụ dựa trên địa chỉ IP source hay dựa trên loại dịch vụ muốn sử dụng (telnet, http, …). Điều này sẽ giúp người sử dụng chủ động hơn trong việc lựa chọn tuyến đường mong muốn để vận chuyển các gói tin trên hệ thống mạng.
 
Ta xem xét ví dụ thực tế sau, trong mạng LAN của doanh nghiệp có 2 VLAN là VLAN 1 và VLAN 2. Doanh nghiệp có yêu cầu những máy tính trong VLAN 1 sẽ truy cập Internet thông qua ISP 1, còn lại những máy tính trong VLAN 2 sẽ truy cập Internet thông qua ISP1.
 
 
Trong trường hợp router sử dụng các giao thức định tuyến thông thường, khi nhận được một gói tin đến, thành phần Data plane của router sẽ thực thi một số tiến trình để xử lý gói tin. Đầu tiên router sẽ kiểm tra các thành phần của frame lớp 2 đã được đóng gói. Router sẽ kiểm tra trường FCS (Frame Check Sequence) của gói tin và loại bỏ gói tin nếu nó phát hiện thấy lỗi. Nếu sau quá trình kiểm tra không phát hiện lỗi, router sẽ loại bỏ header và trailer của frame này để tiếp tục xử lý lớp 3 của gói tin. Router sẽ đọc địa chỉ IP đích trong gói tin lớp 3 và so sánh với những địa chỉ mạng có trong bảng định tuyến. Nếu trong bảng định tuyến có đường đi về mạng tương ứng gói tin sẽ được chuyển tiếp đên cho router next-hop, ngược lại gói tin sẽ bị loại bỏ.  Như vậy, khi các máy tính trong VLAN 1 và VLAN 2 truy cập Internet thì sẽ được chuyển tiếp gói tin dựa trên đường default route đã được cấu hình trên Router. Tuy nhiên điều này không đáp ứng được nhu cầu phân luồng dữ liệu của doanh nghệp ở ví dụ phía trên. Vì vậy ta cần sử dụng một phương pháp khác giúp định tuyến gói tin dựa trên địa chỉ nguồn. Policy Based Routing là một giải pháp giúp đáp ứng nhu cầu trên.
 
Policy Based Routing là một giải pháp giúp người quản trị mạng có thể điều khiển đường đi của gói tin bằng cách quy định các chính sách. Từ đó giúp cho người quản trị có thể phân luồng dữ liệu tốt hơn trong quá trình hoạt động. PBR có thể chuyển tiếp gói tin mà không cần quan tâm đến địa chỉ mạng đích của gói tin, thậm chí thông tin về đường đi đến mạng đích đó không có trong bảng định tuyến.
 
Khi sử dụng Policy Based Routing (PBR) quá trình chuyển tiếp gói tin theo IP đích của router sẽ bị chèn bởi các chính sách định tuyến của PBR. Như vậy tức là các điều kiện của PBR sẽ được kiểm tra trước so với quá trình kiểm tra bảng định tuyến, nếu gói tin đáp ứng được các điều kiện được nêu ra trong PBR thì gói tin sẽ được thực thi các chính sách chuyển tiếp gói tin được mô tả trong PBR mà không cần phải thực hiện quá trình kiểm tra bảng định tuyến. Trong trường hợp các thông tin trong gói tin đó không tương ứng với các điều kiện đã được đưa ra, gói tin sẽ được định tuyến dựa trên bảng định tuyến của router như bình thường.
 
PRB lựa chọn tuyến đường đi cho gói tin bằng cách sử dụng một bộ lọc với các điều kiện được thiết lập thông qua Route map. Một route map được định nghĩa bằng các câu lệnh match để thiết lập điều kiện sau đó thực thi các chính sách bằng câu lệnh set. Sau khi tạo ra route map, nó sẽ được gán vào một interface của router, và bất cứ gói tin nào đi vào interface đó đều sẽ được kiểm tra và so sánh với các điều kiện của route map. 
 
 
Như vậy khi sử dụng PBR, doanh nghiệp sẽ đáp ứng được yêu cầu phân luồng dữ liệu cho các máy tính trong VLAN 1 truy cập internet thông qua ISP 1 và các máy tính trong VLAN 2 truy cập internet thông qua ISP 2.
 
Để tìm hiểu cách thức cấu hình PBR, ta xét ví dụ sau đây:
 
 
Yêu cầu của bài lab là thực hiện cấu hình PBR để những gói tin xuất phát từ mạng 192.168.5.0/24 sẽ rời khỏi R1 theo cổng s1/0 đến router R3.
 
Sau khi thực hiện cấu hình định tuyến OSPF vùng 0 cho toàn bộ sơ đồ mạng thì các router sẽ có đường đi đến tất cả các điểm trên sơ đồ. 
 
Ta kiểm tra bảng định tuyến của R1 bằng lệnh Show ip route:
 
 
Ta thấy, theo router R1, muốn đi đến mạng 192.168.2.1 thì di chuyển đến địa chỉ 192.168.14.4 (router R4), tức là đi qua cổng f0/0.
 
Ta kiểm tra tracert route đến 192.168.2.1 trên router R5 với địa chỉ nguồn lần lượt  là 192.168.5.1 và 192.168.55.1:
 
 
Ta thấy các gói tin sẽ được chuyển tiếp đến địa chỉ 192.168.14.4
 
Bây giờ ta thực hiện cấu hình PBR để các gói tin có địa chỉ nguồn trong mạng 192.168.5.0/24 sẽ đi ra khỏi router R1 theo cổng s1/0 đến router R3.
 
B1: cấu hình access-list để gom nhóm các địa chỉ 192.168.5.0/24
 
 
B2: cấu hình tạo route map
 
 
B3: Gán route map vừa tạo vào Interface
 
 
Sau khi cấu hình xong, ta kiểm tra lại tracert route trên router R5
 
 
Ta thấy đối với địa chỉ source 192.168.5.1 gói tin sẽ được chuyển tiếp qua router R3, mặt khác những gói tin có địa chỉ source 192.168.55.1 vẫn được chuyển tiếp qua router R4.
CHƯƠNG TRÌNH ĐÀO TẠO