策略路由配置
策略路由(PBR:Policy-Based Routing)提供了一种比基于目的地址进行路由转发更加灵活的数据包路由转发机制。策略路由可以根据IP/IPv6报文源地址、目的地址、端口、报文长度等内容灵活地进行路由选择。
现有用户网络,常常会出现使用到多个ISP(Internet Server Provider,Internet服务提供商)资源的情形,不同ISP申请到的带宽不一;同时,同一用户环境中需要对重点用户资源保证等目的,对这部分用户不能够再依据普通路由表进行转发,需要有选择的进行数据报文的转发控制,因此,策略路由技术即能够保证ISP资源的充分利用,又能够很好的满足这种灵活、多样的应用。
IP/IPv6策略路由只会对接口接收的报文进行策略路由,而对于从该接口转发出去的报文不受策略路由的控制;一个接口应用策略路由后,将对该接口接收到的所有包进行检查,不符合路由图任何策略的数据包将按照普通的路由转发进行处理,符合路由图中某个策略的数据包就按照该策略中定义的操作进行转发。
一般情况下,策略路由的优先级高于普通路由,能够对IP/IPv6报文依据定义的策略转发;即数据报文先按照IP/IPv6策略路由进行转发,如果没有匹配任意一个的策略路由条件,那么再按照普通路由进行转发。用户也可以配置策略路由的优先级比普通路由低,接口上收到的IP/IPv6报文则先进行普通路由的转发,如果无法匹配普通路由,再进行策略路由转发。
用户可以根据实际情况配置设备转发模式,如选择负载均衡或者冗余备份模式,前者设置的多个下一跳会进行负载均衡,还可以设定负载分担的比重;后者是应用多个下一跳处于冗余模式,即前面优先生效,只有前面的下一跳无效时,后面次优的下一跳才会生效。用户可以同时配置多个下一跳信息。
策略路由可以分为两种类型:
一、对接口收到的IP报文进行策略路由。该类型的策略路由只会对从接口接收的报文进行策略路由,而对于从该接口转发出去的报文不受策略路由的控制;
二、对本设备发出的IP报文进行策略路由。该类型策略路由用于控制本机发往其它设备的IP报文,对于外部设备发送给本机的IP报文则不受该策略路由控制。
38.1.2.1策略路由应用过程
应用策略路由,必须先创建路由图,然后在接口上应用该路由图。一个路由图由很多条策略组成,每条策略都有对应的序号(Sequence),序号越小,该条策略的优先级越高。
每条策略又由一条或者多条match语句以及对应的一条或者多条set语句组成。match语句定义了IP/IPv6报文的匹配规则,set语句定义了对符合匹配规则的IP/IPv6报文处理动作。在策略路由转发过程,报文依优先级从高到底依次匹配,只要匹配前面的策略,就执行该策略对应的动作,然后退出策略路由的执行。
IP策略路由使用IP标准或者扩展ACL作为IP报文的匹配规则,IPv6策略路由使用IPv6扩展ACL作为IPv6报文的匹配规则。IPv6策略路由对于同一条策略最多只能配置一个match ipv6 address。
38.1.2.2路由图策略匹配模式
在配置路由图时,可以指定每一条策略的匹配模式为permit或者 deny,其意义如下:
l permit:指定该策略的匹配模式为允许模式,即当报文满足该策略的match规则时,会对该IP/IPv6报文应用相应的set规则;如报文不满足策略的所有match规则,报文将会使用该路由图的下一条策略进行匹配。
l deny:指定该策略的匹配模式为拒绝模式,即当报文满足该节点的所有match语句时,不对该IP/IPv6报文执行策略转发而是执行普通的路由转发。
IP/IPv6报文按照路由图中每一条策略的优先级由高到低依次进行匹配,只要匹配了前面的策略就执行相应的动作并退出策略转发流程;如果IP/IPv6报文不能匹配路由图中的任何策略,那么将会对IP/IPv6报文执行普通的路由转发。
38.1.2.3下一跳规则概念
当前策略路由提供了set {ip | ipv6} next-hop、set {ip | ipv6} default next-hop两条转发规则。后面两条为设置缺省下一跳和出接口。这两条规则的意义如下:
l set {ip | ipv6} next-hop:配置策略路由下一跳IP/IPv6地址,优先级比普通路由高,从接口上收到的匹配match规则的IP/IPv6报文将优先转发到set {ip | ipv6} next-hop所指定的下一跳,而不管该IP/IPv6报文在路由表中的实际选路结果和策略路由指定的下一跳是否一致。
l set {ip | ipv6} default next-hop:该命令指定的策略路由的优先级比普通路由的低,但是比默认路由高。从接口上收到的匹配match规则的IP/IPv6报文,如果该报文在路由表中选路失败或者选到默认路由,那么IP/IPv6报文将转发到该命令指定的下一跳。
上述前两条规则指定的下一跳必须是直连的,否则不会生效;如果下一跳不是直连的,策略路由的效果相当于没有配置该命令。
上述两条命令的优先级顺序为:set {ip | ipv6} next-hop > 网络路由/主机路由 > set {ip | ipv6} default next-hop >缺省路由。这两条命令能够支持同时配置,但只有高优先级的生效。
38.1.2.4策略路由下一跳负载均衡模式
一个路由图Sequence中能够配置多个下一跳,多个下一跳之间能够实现两种负载均衡模式:
l 冗余备份模式,支持优先生效,失效接管的模式,多个下一跳之间同一时刻只有一个下一跳生效。
n 前面的下一跳R1失效会自动切换到下一个下一跳R2,当R1重新恢复生效时,会再自动再切换回R1;
n 当存在多个下一跳,如R1/R2/R3等,删除R1再添加R1时,会在后面添加,如R2/R3/R1,次之的R2生效。
l 负载均衡模式,多个下一跳之间基于流进行负载分担。下一跳为出接口形式,对这个功能不支持。
|
~注意
|
|
1、锐捷产品上一个接口最多只能配置一个路由图,在同一个接口上多次配置路由图会相互覆盖,即后配置的生效。
2、策略路由子路由图(route-map sequence)中最多只能配置一个IPV6 ACL。
3、如果配置的子路由图中只有next-hop而没有配置ACL,则等价于所有报文都匹配;如果子路由图中只有ACL而没有next-hop则匹配的报文普通转发;如果子路由图中即没有ACL也没有next-hop,则等价所有报文普通转发。
4、策略路由如果配置了ACL,但是该ACL不存在,等价所有报文都匹配;如果配置了ACL,但是其中没有任何ACE,相当于匹配到了驱动添加的deny any条目,不会从下一个子路由图的ACL开始匹配;
5、交换机上,ACE的deny选项行为,执行普通转发;并且为了满足策略路由的匹配顺序,deny any any行为是跳到下个IPV6 ACL开始匹配。
6、交换机上,配置了PBR功能,会对发往本机的报文同时生效,如果用户希望发往本机的IP/IPv6报文不使用策略路由,则用户需要在PBR规则中在IP/IPV6 ACL前面手工添加“deny设备IP/IPv6地址”的ACE。
7、工作在冗余备份模式下时,匹配路由子图的策略规则的IP报文转发到该路由子图中第一个解析的下一跳;如果所有的下一跳都未解析,则匹配策略规则的IP报文被丢弃;如果第一个下一跳原先未解析后来解析了,则匹配策略规则IP报文的转发将切换到第一个下一跳。
|
|
&说明
|
|
PBR与BFD联动功能请参见锐捷《BFD配置》,《配置BFD命令》。
|
策略路由与BFD联动,可以避免在配置的策略路由不可达的情况下,路由选路不会选择该策略路由作为转发路径。如果存在备份路由转发路径,将可以快速地切换到该备份转发路径。
策略路由,首先需要定义一个路由图,用于指定报文转发到哪儿去的策略;路由图是一组语句组成,可以定义为“Permit”和“Deny”行为;
其次,使用set语句控制报文转发行为。报文转发控制是通过在PBR路由图中定义一组set语句实现;依序使用每一个set语句进行报文转发;每一个语句都不会参考前面或者后面的语句。
最后,需要将待用PBR设置在报文的是入口。如果设置在出口,则PBR不生效,按普通路由转发。
下表用来描述策略路由的缺省配置。
|
功能特性
|
缺省值
|
|
设备多个下一跳的负载均衡模式
|
redundance(冗余备份模式)
|
|
下一跳WCMP权重缺省值
|
1
|
以下章节描述配置IP/IPV6 PBR的功能基本过程:
n < href="Cap1.htm#_配置项1" target="b">(必选)配置IP策略路由
n < href="Cap1.htm#_配置IPV6接口策略路由_1" target="b">(必选)配置IPV6策略路由
n < href="Cap1.htm#_设备本地应用策略路由" target="b">(可选)配置设备负载均衡模式
n < href="Cap1.htm#_配置项2" target="b">(可选)查看配置和状态显示
38.3.1 配置IPv4策略路由
应用策略路由,必须要指定策略路由使用的路由图,并且要创建该路由图。一个路由图由很多条策略组成,每条策略都有对应的序号(Sequence),序号越小,该条策略的优先级越高。每条策略又由一条或者多条match语句以及对应的一条或者多条set语句组成。match语句定义了IP报文的匹配规则,set语句定义了对符合匹配规则的IP报文处理动作。在策略路由转发过程,报文依优先级从高到底依次匹配,只要匹配前面的策略,就执行该策略对应的动作,然后退出策略路由的执行。
策略路由提供了两种类型的match语句,分别是match len和 match ip address, match length以IP报文的长度作为匹配的标准,match ip address以ACL作为IP报文匹配的标准。对于同一条策略,只能配置一个match len,但是可以配置多个match ip address。如果在同一条策略中既指定match length又指定match ip address,那么只有同时满足两个匹配规则的IP报文才会执行该策略中set规则指定的动作。
策略路由提供了两种类型的set语句:第一类用于修改IP报文的QoS字段包括set ip tos、set ip precedence、set ip dscp;第二类用于控制IP报文转发,包括set vrf、set ip nexthop、set ip default nexthop、set interface、set default interface。在满足所有 match规则的情况下,第一类的set规则一定会被执行,第二类set规则则按照优先级顺序执行,优先级关系如下:
n set vrf:配置策略路由是IP报文选路使用的VRF实例,优先级比普通路由高,该命令不能和set ip [default] nexthop、set [default ]interface同时配置。从接口上收到的匹配match规则的IP报文将使用该命令指定的VRF实例的路由表进行选路,而不管该VRF是否和收到该IP的接口所属的VRF一致。
n set ip nexthop:配置策略路由下一跳,优先级比普通路由和set interface高,如果该命令和以下三个命令的任意一个命令同时配置,那么该命令优先生效。从接口上收到的匹配match规则的IP报文将优先转发到set ip nexthop所指定的下一跳,而不管该IP报文在路由表中的实际选路结果是否和策略路由指定的下一跳一致。
n set interface:配置策略路由的出接口,优先级比普通路由高,如果该命令和set default interface、set ip default nexthop同时配置,那么该命令优先生效。从接口上收到的匹配match规则的IP报文将优先从set interface指定出口转发出去,而不管该IP报文在路由表中的实际选路结果是否和策略路由指定出口一致。
n set default interface:该命令的优先级比普通路由低,比默认路由的优先级高,但是比set ip default nexthop的优先级高。从接口上收到的匹配match规则的IP报文,如果该报文在路由表中选路失败或者选到默认路由,那么该IP报文将从该命令指定的接口转发出去。
n set ip default nexthop:该命令指定的策略路由比普通路由的,比默认路由高。从接口上收到的匹配match规则的IP报文,如果该报文在路由表中选路失败或者选到默认路由,那么IP报文将转发到该命令指定的下一跳。
在配置路由图时,可以指定每一条策略的匹配模式为 permit或者 deny,其意义如下:
n permit:指定该策略的匹配模式为允许模式,即当报文满足该策略的所有match规则时,会对该IP报文应用相应的set规则;如报文不满足策略的所有match规则,报文将会使用该路由图的下一条策略进行匹配。
n deny:指定该策略的匹配模式为拒绝模式,即当报文满足该节点的所有match语句时,不对该IP报文执行策略转发而是执行普通的路由转发。
IP报文按照路由图中每一条策略的优先级由高到低依次进行匹配,只要匹配了前面的策略就执行相应的动作并退出策略转发流程;如果IP报文不能匹配路由图中的任何策略,那么将会对IP报文执行普通的路由转发。
配置策略路由时,set ip nexthop可以指定下一跳的跟踪对象,只有跟踪对象是活动的,set ip nexthop指定的下一跳才会被用于转发。策略路由使用track功能极大的增强策略路由对于网络环境变化的感知能力,使得策略路由能够适应动态变化的网络拓扑。
配置一个策略路由分为以下几个步骤:
1. 定义ACL,用做IP报文的匹配规则。
|
命令
|
作用
|
Step 1
|
Ruijie(config)# ip access-list {extended |
standard} {id | name}
|
定义ACL,作为IP报文匹配规则。
|
2. 定义路由图,一个路由图可以由好多策略组成,策略按序号大小排列,只要符合了前面策略,就退出路由图的执行;
要配置策略路由使用的路由图,在全局配置模式中执行以下命令:
|
命令
|
作用
|
Step 2
|
Ruijie(config)# route-map route-map-name
[permit | deny] sequence
|
定义路由图
|
|
Ruijie(config)# no route-map route-map-name
{[permit | deny] sequence}
|
删除路由图
|
3. 定义路由图每个策略的匹配规则或条件;
要定义策略的匹配规则,在路由图配置模式中执行以下命令:
|
命令
|
作用
|
Step 3
|
Ruijie(config-route-map)# match ip address
{access-list-number | access-list-name}
|
匹配访问列表中的地址。
|
|
Or :
Ruijie(config-route-map)# match length min
max
|
匹配报文的长度
|
4. 定义满足匹配规则后,设备的操作;
要定义匹配规则后的操作,在路由图配置模式中执行以下命令:
|
命令
|
作用
|
Step 4
|
Ruijie(config-route-map)# set vrf name
|
对匹配了PBR策略的报文,在指定的vrf路由表进行选路
|
|
Or :
Ruijie(config-route-map)# set ip next-hop
ip-address [weight][ip-address[weight]]
|
设置数据包的下一跳IP地址
|
|
Or :
Ruijie(config-route-map)# set interface
intf_name
|
设置报文的出接口
|
|
Or :
Ruijie(config-route-map)# set ip default next-hop ip-address[weight]
[ip-address[weight]]
|
为路由表中没有明确路由的数据分组指定下一跳IP地址
|
|
Or :
Ruijie(config-route-map)# set default
interface intf_name
|
设置IP报文的默认出接口
|
|
Or :
Ruijie(config-route-map)# set ip precedence
|
修改该IP报文的优先级
|
|
Or :
Ruijie(config-route-map)# set ip tos
|
修改IP报文的TOS域的值
|
|
Or :
Ruijie(config-route-map)# set ip dscp
|
修改IP报文DSCP域的值
|
|
~注意
|
|
1、 在同一条策略中,不能同时配置set vrf和set ip [ default ] nexthop、set [ default ] interface,但是set vrf可以同时和其它的set语句一起配置。在指定策略路由的VRF的时候该VRF必须已经存在,否则会提示配置失败。
2、 在同一条策略中,不能同时配置set ip dscp和 set ip tos、set ip precedence,如果同时配置,那么IP报文相应域的值可能跟预期会不一致。
3、 set vrf、set ip nexthop set interface的优先级高于普通路由,匹配了策略路由的IP报文按照策略路由转发,不匹配的IP报文按普通路由转发。
4、 set default ip nexthop、set default inteface的优先级低于普通路由,只有普通路由选路失败的情况下,IP报文才会按策略路由进行选路转发。
|
route-map配置相关命令详见《配置协议无关命令》。
1. 在指定接口中应用路由图。
要在接口上应用策略路由,在接口模式下执行以下命令:
|
命令
|
作用
|
Step 5
|
Ruijie(config-if)# ip policy route-map name
|
在接口应用策略路由
|
|
Ruijie(config-if)# no ip policy route-map
|
在接口上取消应用的策略路由
|
2. 对本地发送的报文使用策略路由
|
命令
|
作用
|
Step 6
|
Ruijie(config)# ip local policy route-map
[name]
|
对本地发送的报文进行策略路由
|
|
Ruijie(config)# no ip local policy route-map
|
取消对本地发送报文应用的策略路由
|
例如:
在Fastethernet 0/0口上配置策略路由,使得所有进入的报文都转发到下一跳为192.168.5.5的设备
Ruijie(config)# access-list 1 permit any
Ruijie(config)# route-map name
Ruijie(config-route-map)# match ip address 1
Ruijie(config-route-map)# set ip next-hop 192.168.5.5
Ruijie(config-route-map)# int fastethernet 0/0
Ruijie(config-route-map)# exit
Ruijie(config)#interface interface-name
Ruijie(config-if)# ip policy route-map name
3. 配置策略路由的负载分担模式
如果策略路由使用冗余备份模式,那么在当前生效的下一跳失效以后策略路由会自动将流量切换到下一个生效的下一跳;如果策略路由使用负载均衡模式,则在当前的生效下一跳失效后将流量在其它生效下一跳进行负载分担。
在策略路由中配置负载均衡或者冗余备份模式,全局模式下使用命令:
|
命令
|
作用
|
Step 7
|
Ruijie(config)# ip policy {load-balance |
Redundance}
|
设置策略路由的转发是冗余备份还是负载均衡
|
|
Ruijie(config)# no ip policy
|
恢复策略路由的负载分担模式
|
|
~注意
|
|
策略路由执行负载均衡时,WCMP(Weighted Cost Multiple Path)最多支持4个下一跳,ECMP(Equal Cost Multiple Path)最多支持32个下一跳。
配置默认策略路由时,WCMP最多支持4个下一跳,ECMP最多支持32个下一跳。
工作在冗余备份模式下时,第一个解析的下一跳生效,如果所有的下一跳都没有解析,则匹配策略路由的报文被丢弃;如果更高优先级的下一跳原由未解析变为解析,则生效的下一跳切换到当前最高优先级的解析的下一跳。
|
38.3.2 配置IPV6策略路由
|
命令
|
作用
|
Step 1
|
Ruijie#configure terminal
|
进入全局配置模式
|
Step 2
|
Ruijie(config)#ipv6 access-list access-list-name
|
配置用于匹配IPv6 ACL
|
Step 3
|
Ruijie (config)#route-map route-map-name
[permit | deny] sequence
|
配置策略路由使用的路由图
|
Step 4
|
Ruijie (config-route-map)#match ipv6 address access-list-name
|
匹配访问列表中的地址。
|
Step 5
|
Ruijie (config-route-map)#set ipv6 next-hop global-ipv6-address [weight][global-ipv6-address [weight]] [global-ipv6-address...]
|
设置数据包的下一跳IPv6地址。
|
|
Or:
Ruijie (config-route-map)#set ipv6 default next-hop global-ipv6-address [weight][global-ipv6-address [weight]] [global-ipv6-address...]
|
为路由表中没有明确路由的数据分组指定下一跳IPv6地址。
|
Step 6
|
Ruijie (config)#interface interface-type interface-number
|
进入需要应用策略路由的接口。
|
Step 7
|
Ruijie (config-if- interface-type interface-number)#ipv6 policy route-map route-map-name
|
在接口应用策略路由。
|
|
Or:
Ruijie (config-if- interface-type interface-number)#no pv6 policy route-map
|
删除在接口上应用的策略路由。
|
Step 8
|
Ruijie#show ipv6 policy
|
查看配置的策略路由信息。
|
|
Or:
Ruijie#show route-map
|
查看配置的路由图信息。
|
route-map配置相关命令详见《协议无关模块命令配置指导》。
38.3.3 配置设备负载均衡模式
命令
|
作用
|
Ruijie#configure terminal
|
进入全局配置模式。
|
Ruijie(config)#Ipv6 policy [load-balance| redundance]
|
配置设备负载均衡模式。
|
Ruijie(config)#no Ipv6 policy
|
恢复缺省值。
|
38.3.4 查看配置和状态显示
命令
|
作用
|
Ruijie#show ipv6 policy
|
查看配置的策略路由信息。
|
Ruijie#show route-map
|
查看配置的路由图信息。
|
Ruijie#show access-lists
|
显示当前配置的ACL。
|
38.4.1.1组网需求
某局域网有两个出口连接到因特网。通常情况下,希望这两个出接口能够实现负载分担并互为备份。具体要求是:子网1的所有访问因特网的数据流走出接口GigabitEthernet 0/1;子网2的所有访问因特网的数据流走出接口GigabitEthernet 0/2。如果出接口GigabitEthernet 0/1链路断开,那么能够将该接口上的数据流切换到GigabitEthernet 0/2上,反之亦然。
38.4.1.2网络拓扑
图 1. 网络整体拓扑
三层设备DEV1通过G0/3口连接子网1和子网2;通过G0/1和G0/2口连接因特网,其下一跳为200.24.18.1、200.24.19.1。子网1的网段为200.24.16/20,子网2的网段为200.25.19.1。
38.4.1.3配置步骤
# 配置两个不同的ACL,分别用来匹配子网1和子网2
Ruijie(config)#access-list 1 permit 200.24.16.0 0.0.0.255
Ruijie(config)#access-list 2 permit 200.24.17.0 0.0.0.255
# 配置用于控制子网1数据流的路由图,注意出接口G0/1的下一跳优先
Ruijie(config)#route-map RM_FOR_PBR 10
Ruijie(config-route-map)#match ip address 1
Ruijie(config-route-map)#set ip nexthop 200.24.18.1
Ruijie(config-route-map)#set ip nexthop 200.24.19.1
# 配置用于控制子网2数据流路由图,注意出接口G0/2的下一跳优先
Ruijie(config)#route-map RM_FOR_PBR 20
Ruijie(config-route-map)#match ip address 2
Ruijie(config-route-map)#set ip nexthop 200.24.19.1
Ruijie(config-route-map)#set ip nexthop 200.24.18.1
# 配置策略路由的负载分担模式为冗余备份
Ruijie(config)#ip policy redundance
# 在接口GigabitEthernet 0/3上应用策略路由
Ruijie(config)#interface GigabitEthernet 0/3
Ruijie(config-if)#ip policy route-map RM_FOR_PBR
38.4.2.1组网需求
某局域网有两个出口连接到因特网。通常情况下,希望这两个出接口能够实现负载分担并互为备份。
具体要求是:
l 子网1的所有访问因特网的数据流走出接口GigabitEthernet 0/1;
l 子网2的所有访问因特网的数据流走出接口GigabitEthernet 0/2。
l 如果出接口GigabitEthernet 0/1链路断开,那么能够将该接口上的数据流切换到GigabitEthernet 0/2上,反之亦然。
38.4.2.2组网拓扑
如图 2所示,三层设备DEV1通过G0/3口(route port接口)连接子网1和子网2;通过G0/1和G0/2口连接因特网,其下一跳为2001::1/64、2002::1/64。子网1的网段为2003::/64,子网2的网段为2004::/64。
图 2. IPV6 PBR基本应用组网图
38.4.2.3配置要点
38.4.2.4配置步骤
# 配置两个不同的ACL,分别用来匹配子网1和子网2
Ruijie(config)#ipv6 access-list net1
Ruijie(config-ipv6-acl)#permit ipv6 2003::/64 any
Ruijie(config)#ipv6 access-list net2
Ruijie(config-ipv6-acl)#permit ipv6 2004::/64 any
# 配置用于控制子网1数据流的路由图,注意出接口G0/1的下一跳优先
Ruijie(config)#route-map RM_FOR_PBR 10
Ruijie(config-route-map)#match ipv6 address net1
Ruijie(config-route-map)#set ipv6 next-hop 2001::1
Ruijie(config-route-map)#set ipv6 next-hop 2002::1
# 配置用于控制子网2数据流路由图,注意出接口G0/2的下一跳优先
Ruijie(config)#route-map RM_FOR_PBR 20
Ruijie(config-route-map)#match ipv6 address net2
Ruijie(config-route-map)#set ipv6 next-hop 2002::1
Ruijie(config-route-map)#set ipv6 next-hop 2001::1
# 配置策略路由的负载分担模式为冗余备份
Ruijie(config)#ipv6 policy redundance
# 在接口GigabitEthernet 0/3上应用策略路由
Ruijie(config)#interface GigabitEthernet 0/3
Ruijie(config-if-GigabitEthernet 0/3)#ipv6 policy route-map RM_FOR_PBR
38.4.2.5显示验证
# 查看配置的路由图信息
Ruijie#show route-map
route-map RM_FOR_PBR, permit, sequence 10
Match clauses:
ipv6 address net1
Set clauses:
ipv6 next-hop 2001::1 2002::1
route-map RM_FOR_PBR, permit, sequence 20
Match clauses:
ipv6 address net2
Set clauses:
ipv6 next-hop 2002::1 2001::1
# 查看IPv6策略路由应用信息
Ruijie#show ipv6 policy
Interface Route map
GigabitEthernet 0/3 RM_FOR_PBR
# 查看配置的ACL信息
Ruijie#show access-lists
ipv6 access-list net1
10 permit ipv6 2003::/64 any
(0 packets matched)
ipv6 access-list net2
10 permit ipv6 2004::/64 any
(0 packets matched)
38.4.3.1组网需求
某局域网有两个出口连接到因特网,其中一个是教育网出口。通常情况下,希望这两个出接口能够实现负载分担并互为备份。
具体要求是:
l 网络中使用了IPv4和IPv6双栈,同一个接口上需要同时部署IPv4/IPv6 PBR。
l 子网1的IPv4教育网用户所有访问因特网的数据流走教育网出接口。
l 子网2的IPv4所有访问因特网的数据流走出Internet出接口。
l 子网1的IPV6所有访问因特网的数据流走出接口GigabitEthernet 0/1;
l 子网2的IPV6所有访问因特网的数据流走出接口GigabitEthernet 0/2。
l 内部互访数据,如子网1访问子网2不需要通过策略路由,使用内部动态路由。
l 缺省数据流通过缺省路由通过Internet出接口转发。
l 如果出接口GigabitEthernet 0/1链路断开,那么能够将该接口上的数据流切换到GigabitEthernet 0/2上,反之亦然。
38.4.3.2组网拓扑
如图 3所示,三层设备DEV1通过G0/3口(route port接口)连接子网1和子网2;通过G0/1和G0/2口连接因特网,其下一跳为2001::1/64(210.82.12.1)、2002::1/64(59.78.184.1)。子网1的网段为2003::/64(202.112.144.0/25),子网2的网段为2004::/64(218.62.95.0/24)。
图 3. IPV4/IPV6 PBR综合应用组网图
38.4.3.3配置要点
38.4.3.4配置步骤
# 配置两个不同的IPV4 ACL,分别用来匹配子网1和子网2
Ruijie(config)#ip access-list extended 101
Ruijie(config-ip-acl)#permit ip 202.112.144.0 0.0.0.255 any
Ruijie(config)#ip access-list extended 102
Ruijie(config-ip-acl)#permit ip 218.62.95.0 0.0.0.255 any
# 配置两个不同的IPV6 ACL,分别用来匹配子网1和子网2
Ruijie(config)#ipv6 access-list net1
Ruijie(config-ipv6-acl)#permit ipv6 2003::/64 any
Ruijie(config)#ipv6 access-list net2
Ruijie(config-ipv6-acl)#permit ipv6 2004::/64 any
# 配置用于控制子网1数据流的路由图,注意出接口G0/1的下一跳优先,ipv4下一跳属性有default参数
Ruijie(config)#route-map RM_FOR_PBR 10
Ruijie(config-route-map)#match ip address 101
Ruijie(config-route-map)#set ip default next-hop 59.78.184.1
Ruijie(config-route-map)#set ip default next-hop 210.82.12.1
Ruijie(config-route-map)#match ipv6 address net1
Ruijie(config-route-map)#set ipv6 next-hop 2001::1
Ruijie(config-route-map)#set ipv6 next-hop 2002::1
# 配置用于控制子网2数据流路由图,注意出接口G0/2的下一跳优先,ipv4下一跳属性有default参数
Ruijie(config)#route-map RM_FOR_PBR 20
Ruijie(config-route-map)#match ip address 102
Ruijie(config-route-map)#set ip default next-hop 210.82.12.1
Ruijie(config-route-map)#set ip default next-hop 59.78.184.1
Ruijie(config)#route-map RM_FOR_PBR 20
Ruijie(config-route-map)#match ipv6 address net2
Ruijie(config-route-map)#set ipv6 next-hop 2002::1
Ruijie(config-route-map)#set ipv6 next-hop 2001::1
# 配置策略路由的负载分担模式为冗余备份
Ruijie(config)#ipv6 policy redundance
Step1:在接口GigabitEthernet 0/3上同时应用IPv4/IPv6策略路由
Ruijie(config)#interface GigabitEthernet 0/3
Ruijie(config-if-GigabitEthernet 0/3)#ip policy route-map RM_FOR_PBR
Ruijie(config-if-GigabitEthernet 0/3)#ipv6 policy route-map RM_FOR_PBR
38.4.3.5显示验证
# 查看配置的路由图信息
Ruijie#show route-map
route-map RM_FOR_PBR, permit, sequence 10
Match clauses:
ip address 101
ipv6 address net1
Set clauses:
ipv6 next-hop 2001::1 2002::1
ip default next-hop 59.78.184.1 210.82.12.1
route-map RM_FOR_PBR, permit, sequence 20
Match clauses:
ip address 102
ipv6 address net2
Set clauses:
ipv6 next-hop 2002::1 2001::1
ip default next-hop 210.82.12.1 59.78.184.1
# 查看IPv6策略路由应用信息
Ruijie#show ipv6 policy
Interface Route map
GigabitEthernet 0/3 RM_FOR_PBR
# 查看IPv4策略路由应用信息
Ruijie#show ip policy
Interface Route map
GigabitEthernet 0/3 RM_FOR_PBR
# 查看配置的ACL信息
Ruijie#show access-lists
Extended IP access list 101
10 permit ip 202.112.144.0 0.0.0.255 any
Extended IP access list 102
10 permit ip 218.62.95.0 0.0.0.255 any
IPv6 access list net1
permit ipv6 2003::/64 any sequence 10
IPv6 access list net2
permit ipv6 2004::/64 any sequence 10
转载于:https://blog.51cto.com/ipluto/685843