华为策略路由原理与实验

概述:

在这里插入图片描述
策略路由PBR是一种依据用户制定的策略进行路由选择的机制,分为本地策略路由、接口策略路由和智能策略路由SPR。本课程仅讨论本地策略路由。
IP单播策略路由具有如下优点:

  1. 可以根据用户实际需求制定策略进行路由选择,增强路由选择的灵活性和可控性。
  2. 可以使不同的数据流通过不同的链路进行发送,提高链路的利用效率。
  3. 在满足业务服务质量的前提下,选择费用较低的链路传输业务数据,从而降低企业数据服务的成本。

其他特点:

  1. 策略路由优先性高于查路由表。
  2. 本地或者接口策略路由一般是使用ACL进行匹配,不能通过其他过滤器进行匹配。

策略路由和路由策略的区别:

在这里插入图片描述

本地策略路由(PBR):

在这里插入图片描述

仅仅对本机发送的报文(如本地ping报文)报文的策略路由,对转发的报文不起作用。一条本地策略路由可以配置多个策略点,并且这些策略点具体点。本地策略路由支持基于ACL或报文长度的匹配规则。

匹配顺序:
如果找到了匹配的本地策略路由节点,则按照以下步骤发送报文:

  1. 查看用户是否设置了报文的优先级。
    • 如果用户设置了报文的优先级,首先根据用户设置的优先级设置报文的优先级,然后继续向下执行.
    • 如果用户未设置报文的优先级,则继续向下执行。
  2. 查看用户是否设置了本地策略路由的出接口。
    • 如果用户设置了出接口,则将报文从出接口发送出去,不再继续执行下面的步骤。
    • 如果用户未设置出接口,则继续向下执行。
    在这里插入图片描述
  3. 查看用户是否设置了本地策略路由的下一跳(注意:图上没有画出来)(用户可以设置两个下一跳以达到负载分担的目的)。
    • 如果用户设置了策略路由的下一跳,则将报文发往下一跳,不再继续执行下面的步骤。
    • 如果用户未设置下一跳,则按照正常流程根据报文的目的地址查找路由。如果没有查找到路由,则继续向下执行。
    在这里插入图片描述
  4. 查看用户是否设置了本地策略路由的缺省出接口。
    • 如果用户设置了缺省出接口,则将报文从缺省出接口发送出去,不再继续执行下面的步骤。
    • 如果用户未设置缺省出接口,则继续执行。
    在这里插入图片描述
  5. 查看用户是否设置了本地策略路由的缺省下一跳。
    • 如果用户设置了缺省下一跳,则将报文发往缺省下一跳,不再继续执行下面的步骤。
    • 如果用户未设置缺省下一跳,则继续执行。
    在这里插入图片描述
  6. 丢弃报文,产生ICMP_UNREACH 消息。

如果没有找到匹配的本地策略路由节点,按照发送IP报文的一般流程,根据目的地址查找路由。

实验:
在这里插入图片描述
一、目的:
让R1到R4的报文从的流向全部走R2。

二、本地策略路由的配置:

  1. 创建一个本地策略路由。
  2. 通过apply命令配置本地策略路由的动作。
  3. 在系统视图下全局应用前面创建本地策略路由。

现在已经在R1,R2,R3,R4四个路由器上启用了OSPF,我们用R1pingR4的回环口,现在查看R1去往R4的路由条目:
在这里插入图片描述
去往R4的流量进行负载分担,但是模拟器相同流的流量只会走一边,我们用tracert命令进行测试,走的是R2到达R4的。
在这里插入图片描述
因为ping流量是自己发出的,我们使用的就是本地策略路由:(和路由策略相似)

首先创建ACL匹配去往R4的流量:
acl number 3000
rule 5 permit ip destination 4.4.4.4 0
配置本地策略路由:
policy-based-route R4 permit node 1 //取名字为R4,节点为1,动作为允许
if-match acl 3000 //匹配ACL
apply output-interface GigabitEthernet0/0/0 //指定流量的出接口
在系统视图下进行应用:
ip local policy-based-route R4
现在我们进行查看流量走向是否改变了:R1发送的流量从R3到R4改变成了R2到R4,修改成功。
在这里插入图片描述
查看命令:
在这里插入图片描述
三、总结:
本地策略路由可以设置流量的出接口>下一跳>默认出接口>默认下一跳,当下一跳没有设置,就按照路由表进行转发了,如果没有路由表,再按照默认设置的出接口和下一跳进行转发,最后没有转发才丢弃。

接口策略路由(traffic-policy):

接口策略路由刚刚与本地策略路由相反,它仅对转发的报文起作用,对本地发送的报文起作用,且只对接口入方向的报文问生效。

相应配置:

一、定义流分类

  1. 执行命令traffic classifier classifier-name [ type { and | or } ],创建一个流分类并进入流分类视图,或进入已存在的流分类视图。
    and表示流分类中各规则之间关系为“逻辑与”,指定该逻辑关系后:
    • 当流分类中有ACL规则时,报文必须匹配其中一条ACL规则以及所有非ACL规则才属于该类;
    • 当流分类中没有ACL规则时,则报文必须匹配所有非ACL规则才属于该类。
    or表示流分类各规则之间是“逻辑或”,即报文只需匹配流分类中的一个或多个规则即属于该类。缺省情况下,流分类中各规则之间的关系为“逻辑或”。

  2. 匹配对应流。
    If-match xxx //对于过滤器,只能匹配ACL,但是可以匹配其他的信息
    在这里插入图片描述

二、配置流重定向

执行命令traffic behavior behavior-name,创建一个流行为并进入流行为视图,或进入已存在的流行为视图。

请根据实际需要进行如下配置:
执行命令redirect [ vpn-instance vpn-instance-name ] nexthop ip-address &<1-16> [ fail-action discard ]或redirect ipv6 [ vpn-instance vpn-instance-name ] nexthop ipv6-address &<1-16> [ fail-action discard ],配置单个重定向到下一跳的IP地址的动作。该动作仅在进行三层转发时生效。
在这里插入图片描述
当存在多个下一跳时,设备按照主备方式对报文进行重定向转发。设备根据下一跳的配置顺序确定主备链路,先配置的下一跳IP地址优先级较高。配置的第一个下一跳IP地址作为主用链路,其它链路作为备用链路。当主用链路Down之后,则自动选取优先级高的下一跳作为新的主链路。当高优先级的链路恢复后,流量会从低优先级链路切换到高优先级的链路上;当重定向的所有链路都不可用时,报文将根据目的地址找出接口进行转发。
缺省情况下,如果配置的所有下一跳均不可达,则报文按照原来的目的地址转发。如果配置了fail-action discard参数,则如果配置的所有下一跳均不可达,则丢弃报文。

三、配置流策略

执行命令traffic policy policy-name,创建一个流策略并进入流策略视图,或进入已存在的流策略视图。
执行命令classifier classifier-name behavior behavior-name [ precedence precedence-value ],在流策略中为指定的流分类配置所需流行为,即绑定流分类和流行为。

四、应用流策略

执行命令interface interface-type interface-number,进入接口视图。
执行命令traffic-policy policy-name inbound,在接口上应用流策略。

实验:

在这里插入图片描述

一、目的
我们依然保证了全网互通,现在需要完成R5到R1回环口的通信,R5的流量会通过R4,需要在R4上进行流量分流的选择:已经按流的形式进行了负载分担,现在要让所有流量都走R4->R3->R1。
在这里插入图片描述
目前流量的走向:R4->R2->R1。
在这里插入图片描述

二、具体步骤:

因为我们在R4上进行流量的选路,改变的是R5的流量,所以使用的是接口策略路由:使得R5到R1的流量走R4,R3到R1。

首先配置ACL匹配去往R1的流量:
acl number 3000
rule 5 permit ip destination 1.1.1.1 0

配置接口策略路由:
traffic classifier R1 operator or //配置流量的类型,匹配默认是or,也就是匹配到其中一个acl即可,可以配置多个acl
if-match acl 3000

traffic behavior R1 //配置流量对应的行为
redirect ip-nexthop 10.1.4.3 //下一跳为R3的接口

traffic policy R1 //定义一个策略
classifier R1 behavior R1 //将流量和行为关联起来
[R4-GigabitEthernet0/0/2]traffic-policy R1 inbound //进入流量的入接口将策略进行应用

最后在R5上进行测试:走的是R4,R3, R1,表示已经运行成功了
在这里插入图片描述
查看命令:
• 执行命令display traffic classifier [ classifier-name ],查看已配置的流分类信息。
• 执行命令display traffic behavior [ behavior-name ],查看已配置的流行为信息。
• 执行命令display traffic policy [ policy-name [ classifier classifier-name ] ],查看已配置的流策略信息。
• 执行命令display traffic-policy applied-record [ policy-name ] [ global [ slot slot-id ] | interface interface-type interface-number | vlan vlan-id | vsi vsi-name | vpn-instance vpn-instance-name | qos group group-id | bridge-domain bd-id ] [ inbound | outbound ],查看指定流策略的应用记录。

基于ACL简化的策略路由:

简便但是阉割版本的基于接口的策略路由,只能重定向到指定的下一跳,优先于路由转发,并只能在三层交换机作三层转发时有效果。

目的:通过配置基于ACL简化的策略路由,将匹配ACL规则的三层报文重定向到指定的下一跳地址。

背景信息:当用户希望对进入网络的流量进行控制时,可以配置ACL规则根据报文的源IP地址、分片标记、目的IP地址、源端口号、源MAC地址等信息对报文进行匹配,进而配置基于ACL简化的策略路由实现对匹配ACL规则的报文过滤。与配置策略路由相比,配置基于ACL简化的策略路由不需要单独创建流分类、流行为或流策略,配置更为简洁;但是由于仅基于ACL规则对报文进行匹配,因此匹配规则没有流策略丰富。

如果同时配置了系统视图、VLAN视图以及接口视图下的简化策略路由,基于ACL简化的策略路由生效优先级为:接口 > VLAN > 全局应用。

注意:eNSP模拟器只有全局模式下能配置。

配置命令:
在这里插入图片描述

查看命令:
执行命令display traffic-policy applied-record traffic-redirect [ global [ slot slot-id ] | interface interface-type interface-number | vlan vlan-id | qos group group-id ] [ inbound ],查看指定流策略的应用记录。

智能策略路由(SPR):

基于链路质量信息为业务数据流选择最佳链路(略),详细参考如下笔记:
https://blog.csdn.net/tushanpeipei/article/details/109367748

参考资料:华为hedex文档

猜你喜欢

转载自blog.csdn.net/tushanpeipei/article/details/112907584