1.路由控制概述
路由控制可以通过路由策略(Route-Policy)实现,路由策略应用灵活而广泛,有以下几种常见方式:
①控制路由的发布:通过路由策略对发布的路由进行过滤,只发布满足条件的路由。
②控制路由的接收:通过路由策略对接收的路由进行过滤,只接收满足条件的路由。
③控制路由的引入:通过路由策略控制从其他路由协议引入的路由条目,只有满足条件的路由才会被引入。
匹配出要实施路由策略的路由,即定义一组匹配规则进行匹配:可以根据路由信息中的不同属性进行匹配,如目的地址、Tag值等。
2.路由匹配工具
匹配工具1:访问控制列表
访问控制列表(Access Control List,ACL)是一个匹配工具,能够对报文及路由进行匹配和区分。
ACL由若干条permit或deny语句组成。每条语句就是该ACL的一条规则,每条语句中的permit或deny就是与这条规则相对应的处理动作。
通配符(wildcard)
通配符是一个32比特长度的数值,用于指示IP地址中哪些比特位需要严格匹配,哪些比特位无需匹配。
通配符通常采用类似网络掩码的点分十进制形式表示,但是含义却与网络掩码完全不同。
ACL分类
ACL匹配机制
ACL匹配顺序
配置顺序config默认
自动排序auto
ACL基本配置命令
1.创建ACL:acl number
2.配置ACL基本规则:rule [ rule-id ] { deny | permit } [ source { source-address source-wildcard | any } | time-range time-name ]
匹配工具2:IP前缀列表
IP前缀列表(IP-Prefix List)是将路由条目的网络地址、掩码长度作为匹配条件的过滤器,可在各路由协议发布和接收路由时使用。
不同于ACL,IP-Prefix List能够同时匹配IP地址前缀长度以及掩码长度,增强了匹配的精确度。
①、ip-prefix-name:地址前缀列表名称
②、序号:本匹配项在地址前缀列表中的序号,匹配时根据序号从小到大进行顺序匹配
③、动作:permit/deny,地址前缀列表的匹配模式为允许/拒绝,表示匹配/不匹配
④、IP网段与掩码:匹配路由的网络地址,以及限定网络地址的前多少位需严格匹配
⑤、掩码范围:匹配路由前缀长度,掩码长度的匹配范围 mask-length<=greater-equal-value<=less-equal-value<=32
IP-Prefix的匹配机制
IP-Prefix基本配置
创建IPV4前缀列表
ip ip-prefix ip-prefix-name [ index index-number ] { permit | deny } ipv4-address mask-length [ match-network ] [ greater-equal greater-equal-value ] [ less-equal less-equal-value ]
ip-prefix-name:指定地址前缀列表的名称。
index index-number:指定本匹配项在地址前缀列表中的序号。
permit:指定地址前缀列表的匹配模式为允许。
deny:指定地址前缀列表的匹配模式为拒绝。
ipv4-address mask-length:指定IP地址和指定掩码长度。
greater-equal greater-equal-value:指定掩码长度匹配范围的下限。
less-equal less-equal-value:指定掩码长度匹配范围的上限。
3.路由策略工具
策略工具1:Filter-Policy
Filter-Policy(过滤-策略)是一个很常用的路由信息过滤工具,能够对接收、发布、引入的路由进行过滤,可应用于IS-IS、OSPF、BGP等协议。
Filter-Policy在距离矢量路由协议中的应用
在距离矢量路由协议中,设备之间传递的是路由信息,如果需要对这种路由信息进行某种过滤,可以使用Filter-Policy实现,出方向和入方向的生效位置如图所示。
Filter-Policy在链路状态路由协议中的应用
在链路状态路由协议中,各路由设备之间传递的是LSA信息,然后设备根据LSA汇总成的LSDB信息计算出路由表。但是Filter-Policy只能过滤路由信息,无法过滤LSA。
策略工具2:Route-policy
Route-Policy是一个策略工具,用于过滤路由信息,以及为过滤后的路由信息设置路由属性。
一个Route-Policy由一个或多个节点(Node)构成,每个节点都可以是一系列条件语句(匹配条件)以及执行语句(执行动作)的集合,这些集合按照编号从小到大的顺序排列。
Route-policy的组成
permit或deny:指定Route-Policy节点的匹配模式为允许或拒绝。
node:指定Route-Policy的节点号。整数形式,取值范围是0~65535。
if-match子句:定义该节点的匹配条件。
apply子句:定义针对被匹配路由执行的操作。
Route-policy匹配顺序
路由策略使用不同的匹配条件和匹配模式选择路由和改变路由属性。
4.策略路由
PBR简介
PBR(Policy-Based Routing,策略路由):PBR使得网络设备不仅能够基于报文的目的IP地址进行数据转发,更能基于其他元素进行数据转发,例如源IP地址、源MAC地址、目的MAC地址、源端口号、目的端口号、VLAN-ID等等。
用户还可以使用ACL匹配特定的报文,然后针对该ACL进行PBR部署。
若设备部署了PBR,则被匹配的报文优先根据PBR的策略进行转发,即PBR策略的优先级高于传统路由表。
PBR的结构
PBR与Route-Policy类似,由多个节点组成,每个节点由匹配条件(条件语句)和执行动作(执行语句)组成。
每个节点内可包含多个条件语句。
节点内的多个条件语句之间的关系为“与”,即匹配所有条件语句才会执行本节点内的动作。
节点之间的关系为“或”,PBR根据节点编号从小到大顺序执行,匹配当前节点将不会继续向下匹配。
命令语法
PBR与路由策略的区别
PBR分类
基于接口
接口PBR只对转发的报文起作用,对本地始发的报文无效。
接口PBR调用在接口下,对接口的入方向报文生效。缺省情况下,设备按照路由表的下一跳进行报文转发,如果配置了接口PBR,则设备按照接口PBR指定的下一跳进行转发。
本地PBR
本地PBR对本地始发的流量生效,如:本地始发的ICMP报文。
本地PBR在系统视图调用。
配置命令
1.创建PBR:policy-based-route
2.设置IP报文的匹配条件:if-match acl
if-match packet-length
3.指定PBR中报文的出接口:apply output-interface
4.设置PBR报文的下一跳:apply ip-address next-hop
5.全局PBR调用:ip local policy-based-route
6.接口PBR调用:ip policy-based-route
5.MQC
MQC(Modular QoS Command-Line Interface,模块化QoS命令行)是指通过将具有某类共同特征的数据流划分为一类,并为同一类数据流提供相同的服务,也可以对不同类的数据流提供不同的服务。
MQC包含三个要素:流分类(traffic classifier)、流行为(traffic behavior)和流策略(traffic policy)。
MQC的流行为支持重定向报文,因此可以使用MQC实现IP单播策略路由。
流分类:配置流分类,用于匹配感兴趣数据流。可基于VLAN Tag、DSCP、ACL规则……
流行为:将感兴趣报文进行重定向。可以设置重定向的下一跳IP地址或出接口。支持报文过滤、重标记优先级、重定向、流量统计等动作
流策略:将流分类和流行为绑定,对分类后的报文执行对应流行为中定义的动作。一个流策略可以绑定多个流分类和流行为。
流策略支持在接口上调用。流策略存在方向(inbound、outbound)的概念,策略中的流行为匹配入、出方向的报文,对匹配中的报文执行相应的流动作。
MQC配置介绍
1.创建流分类:traffic classifier
2.创建流行为:traffic behavior
3.创建流策略,绑定流分类与流行为:
Traffic policy
classifier classifier-name behavior behavior-name