【计算机网络】--路由控制

写在前面:本人是一名计算机系大二的学生,会不定时的将我的学习笔记分享给大家!如果需要更多的学习资源可以通过我的GitHub自行下载!

路由控制

一、路由策略

定义:

  • 通过一系列工具或方法进行控制的策略
  • 影响路由的产生、发布、选择等,进而影响报文的选择路劲

目的:

  • 对路由进行过滤:要不要这条路由
  • 修改路由属性:将这条路由的耨个属性值修改为一个特定值

作用:

  • 控制路由的接受、发布、引入,提高安全性
  • 修改路由属性,合理规划,提高性能

实现机制:路由策略的核心内容就是过滤器

过滤器 应用范围
访问控制列表(ACL) 各动态路由协议
地址前缀列表(filter- 各动态路由协议
AS路径过滤器(AS-PATH-filter) bgp协议
团体属性过滤器(community-filter) bgp协议
扩展团体属性过滤器(extcommunity-filter) vpn
RD属性过滤器(route distinguisher-filter) vpn
路由策略(route-policy) 各种路由协议
  • route-policy可以使用前面六种过滤器定义自己的匹配规则,可以匹配路由属性,还可以改变路由属性
类型 备注
条件工具 把需要的路由器抓取出来
策略工具 把抓取的路由器质性动作,允许、拒绝、只改属性等
调用工具 将路由策略应用到某个具体的路由协议里面,使其生效

1、ip-prefix list

  • ip-prefix list :能同时精确匹配网络号和前缀长度

  • 性能可控性比acl高(acl无法匹配掩码\前缀掩码)

  • 前缀列表不能路由过滤

  • 最后一条默认拒绝

ip  ip-prefix  test   index   10    permit   10.0.0.0   16    greate-equnal  24   less-equal  28   //前缀长度是24-28,16的意思就是ip地址前面的16位要一样,掩码是24-28

地址范围,10.0.x.x

24<=掩码长度<=28

eg : 10.0.1.0/24,10.0.2.0/25,10.0.2.192/26

语法规则

语法规则
不配置greater-equal和less-equal 前缀长度=16
只配置greater-equal 前缀长度=24-32
只配置less-equal 前缀长度=16-28
同时配置greater-equal和less-equal 前缀长度=24-28

注意事项

  • 其他允许访问的路由要写明允许所有,不然会影响其他的路由表

例子1

匹配所有路由
#
permit   0.0.0.0  0   less  32
#

匹配主机路由:1.1.1.1/32
#
permit  1.1.1.1 32
#

匹配缺省路由
#
permit   0.0.0.0  0

例子2

匹配下面的路由(用最精准最简洁的方式)

192.168.4.0/24

192.168.5.0/24

192.168.6.0/24

192.168.7.0/24

方案一:
permit  192.168.4.0  24
permit   192.168.5.0  24
permit   192.168.6.0   24
permit   192.168.7.0   24


方案二:
ip ip-prefix  ab  index  permit  192.168.4.0  22   gr  24  le   24
  • null:黑洞接口,数据包丢弃
ip   route-sta   xxxx xxxx  null  0 //数据包丢弃

2、filter -policy

  • 一种常用的路由过滤工具,只能过滤路由,无法过滤lsa,不能修改路由属性。
路由类型 路由传递原理
距离矢量 过滤路由器的发送和接受
链路状态 过滤路由器的生成,不影响lsdb的生成

命令

filter-policy  2000  export //在协议簇方向调用策略,acl
fiter-policy  prefix-list wakin import //在协议出方向调用过滤策略,前缀列表
  • 一类lsa是在路由的基上,同一区域的无法过滤

3、route-policy

  • 强大而又复杂的过滤器

规则

route-policy  policy_a  permit   node  10 //策略名称、条件模式、节点
if-macth ip-address   prefix     pre_a //节点匹配规则
apply   cost  100  //通过节点过滤的规则
  • 有若干个节点,节点中方包含了子句
  • 由若干个节点node构成,node之间的关系是‘或’
  • node下可以有n个if-macth,apply
  • if-macth之间的关系‘与’

匹配规则(if-match)

  • acl:路由信息的目的ip地址范围的匹配条件
  • prefix-list:路由信息的目的ip地址范围的匹配条件
  • ip next-hop :路由表的下一跳地址的匹配条件
  • interface:路由信息的出接口的匹陪条件
  • route-type:路由信息类型的匹配条件
  • tag:rip、ospf、isis路由信息的标记域的匹配条件
  • cost:路由信息的路由开销的匹配条件

二、策略路由

1、路由策略和策略路由的区别

路由策略

  • 基于目的地址按路由表转发
  • 基于控制面板,为路由协议和路由表服务
  • 路由协议结合完成路由策略
  • 应用命令:route-policy

策略路由

  • 基于策略的转发,失败后再查找路由表
  • 基于转发平面,为转发策略服务
  • 需要手工逐跳配置,以保证报文按策略转发
  • 应用命令:policy-based-route

路由策略中,拒绝的将不会被通过

策略路由中,拒绝的将做正常转发

2、策略路由

规则

policy-bsed-route  pbr_a  permit  node   10   //策略路由的名称、匹配模式、节点编号
if-match   acl  3000  //节点匹配规则
apply  output-interface  serial 2\0 //通过节点过滤后的动作
policy-based-route  pbr_a  deny  node  20 
  • prb中包含了若干个节点,节点中包含了子句

  • 策略路由中拒绝的会按正常的路由流量转发

  • 节点之间的过滤关系是‘或’

  • 节点if-match之间是‘与’

本地策略路由

  • 仅对本机下发的报文进行处理。对转发的不起作用

接口策略路由

仅对转发对的报文其作用,对本地转发的报文不起作用

本地策略路由配置

  • 使用policy-based-route工具
命令 备注
policy-based-route wakin perMIT node 10 创建pbr
if-macth acl xxxx 配置IP地址匹配条件
if-macth packet -length 64 100
apply output-interface g/0/0/
apply ip-address next-hop 12.0.0.2
ip local policy-based-route wakin

接口策略路由配置

  • traffic-policy工具实现

  • 通过流策略技术实现

流策略

  • 流分类流行为关联,就是流策略,形成了‘’模块化‘’的配置方式,最大优点就是可以节省配置,支持批量修改
技术 备注
traffic classifier,流分类 if-macth语句设定流分类的匹配规则
traffic behavior ,流动作 执行动作,如、重标记、重定向、流量限速、统计等
traffic policy,流策略 将流量分类和流动作关联,应用到流量的入\出接口

命令

命令 备注
traffic classifier wakin
traffic policy Disney 创建流策略
traffic -policy Disney inbound 调用流策略

验证

dis   traffic-policy   applied-record //查看流策略信息

三、路由引入

1、路由引入

  • 技术背景:存在多种路由技术并存的现象

  • 引入概述import,使不同技术或进程可以相互兼容、学习的技术

  • 引入原则:假设路由协议a引入b,a–>b,则会导致:

    • 跟a相关的所有路由引入了b
      • 从a学习到的路由会引入到b
      • 启用了a的接口所在网络路由会进入b
    • 引入的路由必须位于路由表中
    • 引入是外向的,即负责引入的路由不会改变自身路由表

2、带来的问题

a、次优路由

解决方法

  • 方法一:利用路由过滤避免次优路由
#
import-route   xxx
#
acl  xxx
rule  x   deny/permit   source  xxxx  xxxx  
isis\ospf xx
filter-policy   xxx  import //利用acl进行路由过滤
#
  • 方法二:调整协议优先级避免次优路由
#
import-route  xxx
#
isis xx
preference  xxx  //调整优先级
#

b、路由环路

  • 方法一:利用路由过滤避
#
acl 2001
 rule 0 deny source 2.0.0.0 0.255.255.255
 rule 1 permit
 #
ospf 1
 import-route isis 1 route-policy RP1
 #
route-policy RP1 permit node 10
 if-match acl 2001
#
  • 方法二:调整协议优先级
#
isis 1
 preference 160
#
ospf 1
 import-route isis 1
#

本文均属肉肉原创!如有错误欢迎评论指出!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章