admin管理员组

文章数量:1632657

文章目录

  • 前言
  • 控制网络流量可达性
    • 路由策略
      • 路由策略的应用方式
        • ACL应用
        • IP-Prefix List应用
        • Filter-Policy工具介绍
        • Route-Policy工具介绍
    • 策略路由
      • Traffic-Policy工具使用
      • 路由策略与策略路由的区别
  • 多协议复杂场景(路由引入)


前言

  在企业网络的设备通信中,常面临一些非法流量访问的安全性及流量路径不优等问题,故为保证数据访问的安全性、提高链路带宽利用率,就需要对网络中的流量行为进行控制,如控制网络流量可达性、调整网络流量路径等。
  而当面对更加复杂、精细的流量控制需求时,就需要灵活地使用一些工具来实现,本课程将主要介绍一些有关流量控制的常用工具及其使用场景


控制网络流量可达性

  思考:如何控制网络流量可达性?

  解决方案一:可通过修改路由条目(即对接收和发布的路由进行过滤)来控制流量可达性,这种方式称为路由策略。
  解决方案二:可直接通过依据用户制定的策略进行转发,且该策略优于路由表转发,这种方式称为策略路由。

路由策略

  路由策略(Routing Policy)的作用是当路由器在发布、接收和引入路由信息时,可根据实际组网需要实施一些策略,以便对路由信息进行过滤或改变路由信息的属性,如:
  1)控制路由的发布:只发布满足条件的路由信息。
  2)控制路由的接收:只接收必要、合法的路由信息,以控制路由表的容量,提高网络的安全性。
  3)过滤和控制引入的路由:一种路由协议在引入其它路由协议时,只引入一部分满足条件的路由信息,并对所引入的路由信息的某些属性进行设置,以使其满足本协议的要求。
  4)设置特定路由的属性:为通过路由策略过滤的路由设置相应的属性。

路由策略的应用方式

1)可利用Filter-Policy工具对RTA向OSPF引入的路由和RTC写入路由表的路由进行过滤:
  首先使用ACL或IP-Prefix List工具来匹配目标流量;
  然后在协议视图下,利用Filter-Policy向目标流量发布策略。

2)可利用Route-Policy工具,在RTA引入直连路由时对路由进行过滤:
  首先使用ACL或IP-Prefix List工具来匹配目标流量;
  然后在协议视图下,利用Route-Policy对引入的路由条目进行控制。

ACL应用

  访问控制列表ACL(Access Control List)是由permit或deny语句组成的一系列有顺序规则的集合,它通过匹配报文的信息实现对报文的分类。

acl 2001   //创建ACL编号2001
rule 0 permit source 1.1.0.0  0.0.255.255 	//匹配规则permit(通过)/deny(拒绝),通过1.1.0.0/16

ACL的分类:
  基本ACL:主要基于源地址、分片标记和时间段信息对数据包进行分类定义,编号范围为2000-2999。
  高级ACL:可以基于源地址、目的地址、源端口号、目的端口号、协议类型、优先级、时间段等信息对数据包进行更为细致的分类定义,编号范围为3000-3999。
  二层ACL:主要基于源MAC地址、目的MAC地址和报文类型等信息对数据包进行分类定义,编号范围为4000-4999。
  用户自定义ACL:主要根据用户自定义的规则对数据报文做出相应的处理,编号范围为5000-5999。

  一个ACL可以由多条“deny | permit”语句组成,每一条语句描述了一条规则。设备收到数据流量后,会逐条匹配ACL规则,看其是否匹配。如果不匹配,则继续匹配下一条。一旦找到一条匹配的规则,就会执行规则中定义的动作,且不再继续与后续规则进行匹配;如果找不到匹配的规则,则设备会对报文直接进行转发。
  需要注意的是,ACL中定义的这些规则可能存在重复或矛盾的地方。规则的匹配顺序决定了规则的优先级,ACL通过设置规则的优先级来处理规则之间重复或矛盾的情形。
  ACL可以灵活地匹配IP地址的前缀,但无法匹配掩码长度,例如1.1.1.0/24与1.1.1.0/25网段不同,无法匹配过滤。

IP-Prefix List应用

  地址前缀列表即IP-Prefix List。可以通过地址前缀列表,将与所定义的前缀过滤列表相匹配的路由,根据定义的匹配模式进行过滤,以满足使用者的需要。

[SW1]ip ip-prefix key permit 1.1.1.0 24

  这个24代表ip地址的前面24位是固定的,后面由于没有加掩码的参数,那么这个24也代表着该前缀的掩码长度同样也为24位,也就是只能匹配到一条路由,为1.1.1.0/24

[SW1] ip ip-prefix key permit 192.168.1.0 24 greater-equal 25 less-equal 32 

  这个24代表ip地址的前面24位是固定的,后面掩码的范围是25到32之间可以匹配,但是不能匹配到192.168.1.0/24,因为掩码的位数是25到32之间。

Filter-Policy工具介绍

  应用各协议中的Filter-Policy工具可通过引用ACL或地址前缀列表,对接收、发布和引入的路由进行过滤。 对于距离矢量协议和链路状态协议,Filter-Policy工具的操作过程是不同的。

 filter-policy { acl-number | ip-prefix ip-prefix-name } import  	//对接收路由信息过滤
 filter-policy { acl-number | ip-prefix ip-prefix-name } export		//对应引入路由信息过滤

对于距离矢量协议:是基于路由表生成路由的,因此过滤器会影响从邻居接收的路由和向邻居发布的路由。
在RIP协议中实战演示
  filter-policy在import方向上调用的时候,会影响自身路由表的变化 邻居设备会影响。
  filter-policy在export方向上调用的时候,不会影响自身路由表的变化 邻居设备会影响。

链路状态协议:只对引入的路由信息进行过滤,不影响链路通告与链路状态数据库完整性以及协议路由,只影响本地路由。
在OSPF协议中实战演示
  由于OSPF是链路状态路由协议,传递是LSA信息,而你的filter-policy过滤的是路由信息,因此R3路由表中可以学习到完整的 条目 针对于在同一个ospf的区域当中
  因为R2是ABR路由器。而OSPF在整个区域内是链路状态路由协议,在区域间是距离矢量路由协议,所以,可以在R2的的import方向上进行过滤动作,故因此R3上面也没有奇数路由条目(不能在R2出方向上面进行过滤)

Route-Policy工具介绍

  Route-Policy是一种功能非常强大的路由策略工具,它可以灵活地与ACL、IP-Prefix List、As-Path-Filter等其它工具配合使用。

route-policy route-policy-name { permit | deny } node node
  if-match {acl/cost/interface/ip next-hop/ip-prefix}
  apply {cost/ip-address next-hop/tag}  	//类似if语句

  Route-Policy的每个node都有相应的permit模式或deny模式。如果是permit模式,则当路由项满足该node的所有if-match子句时,就被允许通过该node的过滤并执行该node的apply子句,且不再进入下一个node;如果路由项没有满足该node的所有if-match子句,则会进入下一个node继续进行过滤。如果是deny模式,则当路由项满足该node的所有if-match子句时,就被拒绝通过该node的过滤,这时apply子句不会被执行,并且不进入下一个node;否则就进入下一个node继续进行过滤。

思路:
  Pref1用来匹配5.5.5.5/32或1.1.2.0/24,它们将被route-policy RP的node 10过滤掉(deny),所以Table-2中见不到5.5.5.5/32和1.1.2.0/24。
  Pref2用来过滤6.6.6.6/32(deny),所以尽管route-policy RP的node 20是permit,6.6.6.6/32仍然会被过滤掉。因此,Table-2中见不到6.6.6.6/32。
  route-policy RP的node 30定义了两个if-match语句,分别针对ACL 2001和ACL 2002。匹配ACL 2001的路由有1.1.3.0/24(下一跳为34.34.34.2)、1.1.3.0/24(下一跳为13.13.13.1)、1.1.3.0/25(下一跳为34.34.34.2)、1.1.3.0/25(下一跳为13.13.13.1),同时又匹配ACL 2002的路由有1.1.3.0/24(下一跳为13.13.13.1)和1.1.3.0/25(下一跳为13.13.13.1)。于是,1.1.3.0/24(下一跳为13.13.13.1)和1.1.3.0/25(下一跳为13.13.13.1)的cost被修改为21。
  1.1.3.0/24(下一跳为34.34.34.2)和1.1.3.0/25(下一跳为34.34.34.2)继续尝试通过route-policy RP的node 40。由于1.1.3.0/25满足Pref3,所以1.1.3.0/25(下一跳为34.34.34.2)的cost被修改为11。
  最后,1.1.3.0/24(下一跳为34.34.34.2)通过了route-policy RP的node 50。

实例:

  如图所示:RTC设备配置禁止与10.1.1.0 24网段的设备通信,RTA禁止与10.1.2.0网段设备进行通信。
  RTA还可以使用route-policy工具实现,配置需求如下:

acl 2000
	rule 0 permit source 10.1.1.0 0.0.0.255
	rule 5 permit source 10.1.3.0 0.0.0.255
route-policy huawei-control permit node 10 if-match acl 2000
ospf 1
	import-route direct route-policy huawei-control

策略路由

  传统的路由策略没有负载分担,策略路由有负载分担,提高带宽使用率,策略路由PBR分为三种:

  本地策略路由:当用户需要实现不同源地址的报文或者不同长度的报文通过不同的方式进行发送时,可以配置本地策略路由,常用policy-Based-Route工具来实现。
  智能策略路由:基于链路质量信息为业务数据流选择最佳链路,当用户需要为不同业务选择不同质量的链路时,可以配置智能策略路由。常用Smart-Policy-Route工具。
  接口策略路由:当用户需要将收到的某些报文通过特定的下一跳地址进行转发时,需要配置接口策略路由。使匹配重定向规则的报文通过特定的下一跳出口进行转发,不匹配重定向规则的报文则根据路由表直接转发。接口策略路由多应用于负载分担和安全监控。常用Traffic-Policy工具来实现。

  基于自定义策略实现:使用Traffic-Filter工具对数据进行过滤


  经测试,在设置完策略路由后,RTC的路由表仍然有全网的路由,且市场部无法访问财务部和研发部,对于其他部门仍可正常访问。同样,RTD的路由表也有全网的路由,且公司总部无法访问研发部,其他仍可正常访问。

Traffic-Policy工具使用

[RTA]acl 3000
  rule 5 permit ip source 10.1.1.0 0.0.0.255 dest 10.1.3.0 0.0.0.255
traffic classifier huawei-control1
 if-match acl 3000
traffic behavior huawei-control1
 redirect ip-nexthop 12.1.1.2
traffic policy huawei-control1
 classifier huawei-control1 behavior huawei-control1
int g0/0/2
 traffic-policy huawei-control1 inbound
[RTA]acl 3001	
 rule 5 permit ip source 10.1.2.0 0.0.0.255 dest 10.1.3.0 0.0.0.255
traffic classifier huawei-control2
 if-match acl 3001
traffic behavior huawei-control2
 redirect ip-nexthop 12.1.3.2
traffic policy huawei-control2 
 classifier huawei-control2 behavior huawei-control2
int g4/0/0
 traffic-policy huawei-control2 inbound

路由策略与策略路由的区别

路由策略策略路由
基于控制平面,会影响路由表表项基于转发平面,不会影响路由表表项,且设备收到报文,就会查找策略路由进行匹配转发,如匹配失败,则再由路由表进行转发
只能基于目的地址进行策略制定可基于源地址、目的地址、协议类型、报文大小等进行制定
与路由协议相结合使用需手工逐跳配置,以保证报文按照策略进行转发
常用工具:Route-Policy、Filter-Policy等常用工具:Traffic-Fliter、Traffic-Policy、Policy-Based-Route等
  路由器存在两种类型的表:一个是路由表(routing-table),另一个是转发表(forwarding-table),转发表是由路由表映射过来的,策略路由直接作用于转发表,路由策略直接作用于路由表。由于转发在底层,路由在高层,所以直接作用在转发表的转发优先级比查找路由表转发的优先级高。

  路由策略是在路由发现的时候产生作用,并根据一些规则,使用某种策略来影响路由发布、接收或路由选择的参数,从而改变路由发现的结果,从而最终改变路由表内容;策略路由是在数据包转发的时候发生作用,不改变路由表中的任何内容,它可以通过设置的规则影响数据报文的转发。

多协议复杂场景(路由引入)


问题1:会造成次优路径
  1)利用路由控制可以避免次优路径
  2)调整协议优先级避免次优路由

问题2:路由环路
  1)利用路由过滤避免路由环路
  2)调整协议优先级避免路由环路

本文标签: 路由策略