策略路由PBR(Policy-Based Routing)是一种依据用户制定的策略进行路由选择的机制,其优先级高于直连路由、静态路由和通过动态路由协议生成的路由。设备配置策略路由后,若接收的报文(包括二层报文)匹配策略路由的规则,则按照规则转发;若匹配失败,则根据目的地址按照正常转发流程转发。
策略路由与路由策略(Routing Policy)存在以下不同:
传统的路由转发原理是首先根据报文的目的地址查找路由表,然后进行报文转发。但是目前越来越多的用户希望能够在传统路由转发的基础上根据自己定义的策略进行报文转发和选路。
策略路由具有如下优点:
如图1所示,汇聚层Switch做三层转发设备,接入层设备LSW做用户网关,接入层LSW和汇聚层Switch之间路由可达。汇聚层Switch通过两条链路连接到两个核心路由器上,一条是高速链路,网关为10.1.20.1/24;另外一条是低速链路,网关为10.1.30.1/24。
公司希望汇聚层Switch上送到核心层设备的报文中,源IP地址为192.168.100.0/24的报文通过高速链路传输,而源IP地址为192.168.101.0/24的报文则通过低速链路传输。
采用重定向方式实现策略路由,进而提供差分服务,具体配置思路如下:
S1 基本配置
创建VLAN并配置各接口
# 在S1上创建VLAN100和VLAN200。
<HUAWEI> system-view
[HUAWEI] sysname S1
[S1] vlan batch 100 200
配置S1上接口GE0/0/1、GE0/0/2和GE0/0/3的接口类型为Trunk,并加入VLAN100和VLAN200。
[S1] interface gigabitethernet 0/0/1
[S1-GigabitEthernet0/0/1] port link-type trunk
[S1-GigabitEthernet0/0/1] port trunk allow-pass vlan 100 200
[S1-GigabitEthernet0/0/1] quit
[S1] interface gigabitethernet 0/0/2
[S1-GigabitEthernet0/0/2] port link-type trunk
[S1-GigabitEthernet0/0/2] port trunk allow-pass vlan 100 200
[S1-GigabitEthernet0/0/2] quit
[S1] interface gigabitethernet 0/0/3
[S1-GigabitEthernet0/0/3] port link-type trunk
[S1-GigabitEthernet0/0/3] port trunk allow-pass vlan 100 200
[S1-GigabitEthernet0/0/3] quit
# 创建VLANIF100和VLANIF200,并配置各虚拟接口IP地址。
?
# 创建VLANIF100和VLANIF200,并配置各虚拟接口IP地址。
[S1] interface vlanif 100
[S1-Vlanif100] ip address 10.1.20.2 24
[S1-Vlanif100] quit
[S1] interface vlanif 200
[S1-Vlanif200] ip address 10.1.30.2 24
[S1-Vlanif200] quit
.配置ACL规则?
# 在S1上创建编码为3001、3002的高级ACL,规则分别为允许源IP地址为192.168.100.0/24和192.168.101.0/24的报文通过。
?
2.配置ACL规则
# 在S1上创建编码为3001、3002的高级ACL,规则分别为允许源IP地址为192.168.100.0/24和192.168.101.0/24的报文通过。
[S1] acl 3001
[S1-acl-adv-3001] rule permit ip source 192.168.100.0 0.0.0.255
[S1-acl-adv-3001] quit
[S1] acl 3002
[S1-acl-adv-3002] rule permit ip source 192.168.101.0 0.0.0.255
[S1-acl-adv-3002] quit
在S1上创建流分类c1、c2,匹配规则分别为ACL 3001和ACL 3002。
配置流分类
在S1上创建流分类c1、c2,匹配规则分别为ACL 3001和ACL 3002。
[S1] traffic classifier c1 operator or
[S1-classifier-c1] if-match acl 3001
[S1-classifier-c1] quit
[S1] traffic classifier c2 operator or
[S1-classifier-c2] if-match acl 3002
[S1-classifier-c2] quit
在S1上创建流行为b1、b2,并分别指定重定向到10.1.20.1/24和10.1.30.1/24的动作。
配置流行为
# 在S1上创建流行为b1、b2,并分别指定重定向到10.1.20.1/24和10.1.30.1/24的动作。
[S1] traffic behavior b1
[S1-behavior-b1] redirect ip-nexthop 10.1.20.1
[S1-behavior-b1] quit
[S1] traffic behavior b2
[S1-behavior-b2] redirect ip-nexthop 10.1.30.1
[S1-behavior-b2] quit
?在S1上创建流策略p1,将流分类和对应的流行为进行绑定。
配置流策略并应用到接口上
# 在S1上创建流策略p1,将流分类和对应的流行为进行绑定。
[S1] traffic policy p1
[S1-trafficpolicy-p1] classifier c1 behavior b1
[S1-trafficpolicy-p1] classifier c2 behavior b2
[S1-trafficpolicy-p1] quit
# 将流策略p1应用到接口GE0/0/3的入方向上。
# 将流策略p1应用到接口GE0/0/3的入方向上。
[S1] interface gigabitethernet 0/0/3
[S1-GigabitEthernet0/0/3] traffic-policy p1 inbound
[S1-GigabitEthernet0/0/3] return
查看ACL 的配置信息
查看流分类的配置信息。
查看流策略的配置信息。