阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

带你盘路由策略!

256次阅读
没有评论

共计 5242 个字符,预计需要花费 14 分钟才能阅读完成。

导读 在网络规划中,路由策略的规划也是一个核心的内容。为了方便大家更好的掌握和应用路由策略,我们推出了路由策略这个专题。

带你盘路由策略!

对于 IP 网络工程师来说,路由策略的部署随处可见,无论在运营商 IP 网络还是在企业网中,路由策略的应用都是非常普遍的。同时,在网络规划中,路由策略的规划也是一个核心的内容。为了方便大家更好的掌握和应用路由策略,我们推出了路由策略这个专题,希望这个专题能够抛砖引玉引导各位一起讨论、共同学习。

一、路由策略概述
1. 什么是路由策略?

我们讨论某个东西一般都回避不了这样一个问题:“XXX 是什么?”这里我们也尝试对路由策略下一个定义,来回答:“路由策略是什么?”这个问题。

很多人会把路由策略等同于 route-policy,也有人会可能会说 filter-policy 也属于路由策略的范畴,其实这些理解都有点不太准确。实际上,路由策略不是一个特定的技术,也不是一个特定的特性。

阿里云 2 核 2G 服务器 3M 带宽 61 元 1 年,有高配

腾讯云新客低至 82 元 / 年,老客户 99 元 / 年

代金券:在阿里云专用满减优惠券

2. 路由策略各工具之间的调用关系

当讨论到路由策略的时候,我们经常会碰到很多种工具,比如 ACL、route-policy、ip-prefix、filter-policy 等等,不一一列举了。很多人都会被他们之间的调用关系搞昏了头,总感觉他们之间有说清道不明的关系。这里我们通过一张图来给大家介绍他们之间的关系。

带你盘路由策略!

如图 1 所示,我们把所有的工具划分成三类:

  • 条件工具:用于把需要的路由“抓取”出来。
  • 策略工具:用于把“抓取”出来的路由执行某个动作,比如允许、拒绝、修改属性值等。
  • 调用工具:用于将路由策略应用到某个具体的路由协议里面,使其生效。
  • 调用工具中的 filter-policy 和 peer 又自带策略工具的功能,因此这两个东西又可以直接调用条件工具。其他的调用工具都必须通过 route-policy 来间接的调用条件工具。

    需要注意 peer 不能调用 ACL,可以调用其他的所有条件工具。

    3. 路由策略有什么用?

    在 IP 网络中,路由策略的用途主要包括两个方面:1)对路由信息进行过滤。2)修改路由的属性。详细请见表 1:

    带你盘路由策略!

    如果各位觉得这样介绍路由策略的作用还是有点抽象的话,没关系,下面我们再来个实际的例子来介绍一下你就明白了。通过路由策略对路由信息进行过滤:

    带你盘路由策略!

    如图 1 所示,SwitchA 属于双上行的组网结构,SwitchA 会从 SwitchB 和 SwitchC 那里分别接收到路由。如果 SwitchA 仅希望接收来自 SwitchB 的路由,而不希望接收来自 SwitchC 的路由,此时应该怎么办呢? 这种情况下就可以考虑在 SwitchA 上配置路由策略,允许来自 SwitchB 的路由,拒绝来自 SwitchC 的路由。通过路由策略修改路由的属性

    带你盘路由策略!

    如图 2 所示,SwitchA 也是双上行的网络结构,但是,由于 SwitchB 这边的链路稳定性更好一点,带宽更大一点,因此用户想用 SwitchB 这边的链路作为主用链路,SwitchC 这边的链路作为备用链路,当主用链路故障的时候流量自动切换至备用链路。这种场景下,可以使用路由策略,将来自 SwitchB 这边的路由开销值调小,将来自 SwitchC 这边的路由开销值调大,这样流量就会自动选取 SwitchB 这边的链路作为主用链路,SwitchC 这边的链路作为备用链路,实现路由的主备份。

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

    我在第一次接触路由策略和策略路由的时候也是抓耳挠腮,分不清楚,老觉得为什么协议的开发者给他们起这么容易混淆的名字,改一个名字不就不容易混淆了嘛!但是既然名字叫了这么多年了,各位虽然分不清楚,但已经耳熟了。虽然策略路由这个特性不作为本专题的讨论范畴,我们在这里也把这对孪生兄弟做一个对比分析,让大家不再混淆。

    (1) 路由策略

    路由策略的操作对象是路由信息。路由策略主要实现了路由过滤和路由属性设置等功能,它通过改变路由属性 (包括可达性) 来改变网络流量所经过的路径。

    (2) 策略路由

    策略路由的操作对象是数据包,在路由表已经产生的情况下,不按照路由表进行转发,而是根据需要,依照某种策略改变数据包转发路径。

    所以这样可以看出,策略路由是在路由表之前起作用,如果报文匹配了策略路由,那么这个报文就不会再去查路由表了,而是直接按照策略路由的“指引”进行转发。所以策略路由是一个不太按照套路出牌的“家伙”,也正因为这样,策略路由的应用会更加灵活一点。

    2. 路由策略和策略路由对比分析

    为了更加具体的对比路由策略和策略路由,我们通过表 2 对两者进行一个全方位的对比。

    带你盘路由策略!

    三、路由策略牛刀小试

    上面在宏观上介绍了关于路由策略的一些基础知识,各位是不是还是觉得有点不过瘾? 是不是还感觉不到路由策略究竟有什么洪荒之力? 没关系,接下来我们来看一个通过路由策略实现路由过滤的举例,算作牛刀小试。这个举例中会涉及 ACL、ip-prefix、route-policy、filter-policy 等概念,我们会在后面几期的专题中详细展开介绍,各位就先了解一下路由策略究竟能干什么就行,先不要研究太深,以免走火入魔!

    带你盘路由策略!

    如图 3 所示,运行 OSPF 协议的网络中,SwitchA 从 Internet 网络接收路由,并为 OSPF 网络提供了 Internet 路由,现在用户希望 OSPF 网络仅接收 172.16.16.0/24、172.16.17.0/24 和 172.16.18.0/24 这三条外部路由,其他的外部路由都不接收。

    上述用户需求可以通过多种方式去实现,接下来我们给出两个比较常见的实现方式供各位参考。

    下面的实验中我们通过在 SwitchA 中配置黑洞路由做为测试路由,在 OSPF 中引入静态路由来模拟从 Internet 网络接收路由。SwitchA 上的关键配置如下:

    #
    ospf 1
     import-route static
     area 0.0.0.0
      network 192.168.1.0 0.0.0.255
    #
    ip route-static 172.16.16.0 255.255.255.0 NULL0
    ip route-static 172.16.17.0 255.255.255.0 NULL0
    ip route-static 172.16.18.0 255.255.255.0 NULL0
    ip route-static 172.16.19.0 255.255.255.0 NULL0
    ip route-static 172.16.20.0 255.255.255.0 NULL0
    #
    1. 通过 ACL+route-policy 实现路由过滤

    (1) 定义一个 ACL 2000,用于匹配需要放行的路由。

    [SwitchA] acl 2000
    [SwitchA-acl-basic-2000] rule 5 permit source 172.16.16.0 0
    [SwitchA-acl-basic-2000] rule 10 permit source 172.16.17.0 0
    [SwitchA-acl-basic-2000] rule 15 permit source 172.16.18.0 0
    [SwitchA-acl-basic-2000] quit

    (2) 创建一个 route-policy,名字叫 RP,同时配置一个编号为 10 的节点,调用 ACL2000。

    [SwitchA] route-policy RP permit node 10
    [SwitchA -route-policy] if-match acl 2000

    (3) 在 OSPF 引入静态路由的时候调用这个 route-policy

    [SwitchA] ospf 1
    [SwitchA-ospf-1] import-route static route-policy RP
    [SwitchA-ospf-1] quit

    由于 route-policy 默认隐含 deny 节点,因此 172.16.19.0 及 172.16.20.0 路由由于没有满足 if-match 语句,从而不被引入到 OSPF 中。

    配置完上述路由策略以后 SwitchB 的路由表如下:

    [SwitchB]display  ip routing-table 
    
    Route Flags: R - relay, D - download to fib
    
    -----------------------------------------------------------------------------
    
    Routing Tables: Public
    
             Destinations : 7        Routes : 7       
    
    Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface
    
          127.0.0.0/8    Direct  0    0           D   127.0.0.1       InLoopBack0
          127.0.0.1/32   Direct  0    0           D   127.0.0.1       InLoopBack0
        172.16.16.0/24  O_ASE   150  1           D   192.168.1.1     Vlanif10
        172.16.17.0/24  O_ASE   150  1           D   192.168.1.1     Vlanif10
        172.16.18.0/24  O_ASE   150  1           D   192.168.1.1     Vlanif10
        192.168.1.0/24  Direct  0    0           D   192.168.1.2     Vlanif10
    192.168.1.2/32      Direct  0    0           D   127.0.0.1       Vlanif10

    可以看到在 SwitchA 上配置完路由策略以后,SwitchB 的 IP 路由表里面只有 172.16.16.0/24、172.16.17.0/24 和 172.16.18.0/24 这三条外部路由,其他的外部路由都没有了。

    2. 通过 ip-prefix+filter-policy 实现路由过滤

    (1) 定义一个地址前缀列表,用于匹配需要放行的路由。

    [SwitchA] ip ip-prefix huawei index 10 permit 172.16.16.0 24
    [SwitchA] ip ip-prefix huawei index 20 permit 172.16.17.0 24
    [SwitchA] ip ip-prefix huawei index 30 permit 172.16.18.0 24

    (2) 在 SwitchA 的 OSPF 视图中,通过 filter-policy 对发布的路由进行过滤。

    [SwitchA] ospf 1
    [SwitchA -ospf-1] filter-policy ip-prefix huawei export
    [SwitchA-ospf-1] quit

    由于 ip-prefix 默认隐含 deny 节点,因此 172.16.19.0 及 172.16.20.0 路由由于不在 ip-prefix 允许的范围内,所以在 SwitchA 向 SwitchB 发布路由的时候,仅发布在 ip-prefix 允许的范围内的路由,其他的所有路由都不发布。

    配置完上述配置以后 SwitchB 的路由表如下:

    [SwitchB] display  ip routing-table 
    
    Route Flags: R - relay, D - download to fib
    
    -----------------------------------------------------------------------------
    
    Routing Tables: Public
    
             Destinations : 7        Routes : 7       
    
    
    Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface
    
     
          127.0.0.0/8   Direct  0    0           D   127.0.0.1       InLoopBack0
          127.0.0.1/32  Direct  0    0           D   127.0.0.1       InLoopBack0
        172.16.16.0/24  O_ASE   150  1           D   192.168.1.1     Vlanif10
        172.16.17.0/24  O_ASE   150  1           D   192.168.1.1     Vlanif10
        172.16.18.0/24  O_ASE   150  1           D   192.168.1.1     Vlanif10
        192.168.1.0/24  Direct  0    0           D   192.168.1.2     Vlanif10
        192.168.1.2/32  Direct  0    0           D   127.0.0.1       Vlanif10

    可以看到在 SwitchA 上配置完路由 filter-policy 以后,SwitchB 的 IP 路由表里面只有 172.16.16.0/24、172.16.17.0/24 和 172.16.18.0/24 这三条外部路由,其他的外部路由都没有了。

    从实验结果来看,上述两种方法使用的工具和方法不同,但是结果是一样的。相信各位是不是已经看到路由策略确实不能直接等同于 route-policy 了吧?实际上,路由策略是一系列对路由进行控制的手段,路由策略的使用过程中可能是 ACL、route-policy、ip-prefix、filter-policy 等多个工具的不同组合,上述举例仅仅列举了其中两种比较常见的组合而已。

    阿里云 2 核 2G 服务器 3M 带宽 61 元 1 年,有高配

    腾讯云新客低至 82 元 / 年,老客户 99 元 / 年

    代金券:在阿里云专用满减优惠券

    正文完
    星哥玩云-微信公众号
    post-qrcode
     0
    星锅
    版权声明:本站原创文章,由 星锅 于2024-07-25发表,共计5242字。
    转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
    【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
    阿里云-最新活动爆款每日限量供应
    评论(没有评论)
    验证码
    【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

    星哥玩云

    星哥玩云
    星哥玩云
    分享互联网知识
    用户数
    4
    文章数
    19350
    评论数
    4
    阅读量
    7902671
    文章搜索
    热门文章
    开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南

    开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南

    开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南 大家好,我是星哥。之前介绍了腾讯云的 Code...
    星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

    星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

    星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
    星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

    星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

    星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
    我把用了20年的360安全卫士卸载了

    我把用了20年的360安全卫士卸载了

    我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
    再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

    再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

    再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
    阿里云CDN
    阿里云CDN-提高用户访问的响应速度和成功率
    随机文章
    把小米云笔记搬回家:飞牛 NAS 一键部署,小米云笔记自动同步到本地

    把小米云笔记搬回家:飞牛 NAS 一键部署,小米云笔记自动同步到本地

    把小米云笔记搬回家:飞牛 NAS 一键部署,小米云笔记自动同步到本地 大家好,我是星哥,今天教大家在飞牛 NA...
    星哥带你玩飞牛NAS-7:手把手教你免费内网穿透-Cloudflare tunnel

    星哥带你玩飞牛NAS-7:手把手教你免费内网穿透-Cloudflare tunnel

    星哥带你玩飞牛 NAS-7:手把手教你免费内网穿透 -Cloudflare tunnel 前言 大家好,我是星...
    多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞定

    多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞定

    多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞...
    星哥带你玩飞牛NAS-11:咪咕视频订阅部署全攻略

    星哥带你玩飞牛NAS-11:咪咕视频订阅部署全攻略

    星哥带你玩飞牛 NAS-11:咪咕视频订阅部署全攻略 前言 在家庭影音系统里,NAS 不仅是存储中心,更是内容...
    星哥带你玩飞牛NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手!

    星哥带你玩飞牛NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手!

    星哥带你玩飞牛 NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手! 作为动漫爱好者,你是否还在为...

    免费图片视频管理工具让灵感库告别混乱

    一言一句话
    -「
    手气不错
    颠覆 AI 开发效率!开源工具一站式管控 30+大模型ApiKey,秘钥付费+负载均衡全搞定

    颠覆 AI 开发效率!开源工具一站式管控 30+大模型ApiKey,秘钥付费+负载均衡全搞定

      颠覆 AI 开发效率!开源工具一站式管控 30+ 大模型 ApiKey,秘钥付费 + 负载均衡全...
    免费无广告!这款跨平台AI RSS阅读器,拯救你的信息焦虑

    免费无广告!这款跨平台AI RSS阅读器,拯救你的信息焦虑

      免费无广告!这款跨平台 AI RSS 阅读器,拯救你的信息焦虑 在算法推荐主导信息流的时代,我们...
    星哥带你玩飞牛NAS-16:飞牛云NAS换桌面,fndesk图标管理神器上线!

    星哥带你玩飞牛NAS-16:飞牛云NAS换桌面,fndesk图标管理神器上线!

      星哥带你玩飞牛 NAS-16:飞牛云 NAS 换桌面,fndesk 图标管理神器上线! 引言 哈...
    仅2MB大小!开源硬件监控工具:Win11 无缝适配,CPU、GPU、网速全维度掌控

    仅2MB大小!开源硬件监控工具:Win11 无缝适配,CPU、GPU、网速全维度掌控

    还在忍受动辄数百兆的“全家桶”监控软件?后台偷占资源、界面杂乱冗余,想查个 CPU 温度都要层层点选? 今天给...
    让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级

    让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级

    让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级 大家好,我是星哥,之前写了一篇文章 自己手撸一...