一、前言
- 当路由器收到一个IP数据包,路由器会根据数据包的目的IP地址查找FIB(Forwarding Information Base,转发信息库)表,找到“最匹配”的路由条目后,将数据包根据路由条目所指示的出接口或下一跳转发出去。
- ·路由器获取路由的方式有三种,分别是动态路由(例如OSPF)、静态路由、直连路由。一个网络中可能会同时存在这三种方式,那么采用不同方式获取路由的路由器之间如何实现路由可达?
- 本课程介绍IP路由的基础知识,包括路由转发和路由表,以及路由引入的相关知识。
二、路由基础
1.路由概述
当路由器收到一个IP报文时,路由器根据该IP报文的目的地址匹配路由条目(或路由表项)。
- 若有匹配的路由条目,则依据该条目中的出接口或下一跳等信息进行报文转发;
- 若无匹配的路由条目,则路由器没有相关路由信息用于指导报文转发,此时会丢弃该报文。
2.RIB与FIB
具有路由功能的网络设备都维护两种重要的数据表:
- 一是路由表RIB(Routing Information Base,路由信息库);
- 二是转发表FIB。
2.1路由表
每个路由器都有路由表,而路由表又分为本地核心路由表和协议路由表。
3.IP路由查找的最长匹配原则
- 路由器查找FIB表时,将报文的目的IP地址和FIB表中各表项的掩码进行按位“逻辑与”,得到的地址符合FIB表中的网络地址则匹配。
- 最终选择一个掩码最长的FIB表项转发报文。
3.1比较步骤
- 掩码最长匹配 掩码最长优先(最精确)
- Pre(优先级)ospf isis rip direct statice(路由协议优先级)
- Cost(开销)
4.路由的来源
5.动态路由协议
动态路由协议根据作用范围不同,可分为:
- 内部网关协议IGP(Interior Gateway Protocol):在一个自治系统内部运行。常见的IGP协议包括OSPF和IS-IS。
- 外部网关协议EGP(Exterior Gateway Protocol):运行于不同自治系统之间。BGP是目前最常用的EGP协议。
6.路由迭代
路由必须有直连的下一跳才能够指导转发,静态路由或BGP路由的下一跳可能不是直连的邻居,因此需要计算出一个直连的下一跳,这个过程就叫做路由迭代。迭代路由中Flags是RD。
7.数据转发流程
三、IP路由高级应用
1.路由引入
1.1IP路由高级应用场景分析(1)
场景描述:
- 假设A公司和B公司各有自己的网络,这两个网络被独立管理及运维,A公司网络使用的路由协议为OSPF,B公司网络使用的路由协议为IS-IS。
- 现在两家公司合并成一家公司,导致原有的两张网络不得不进行整合,为了使合并后的新公司业务流量能够正常在整合后的网络上交互,最重要的就是实现路由互通。
1.2.IP路由高级应用场景分析(2)
场景描述:
- 在大型企业网络中,网络规模十分庞大,选用单一的路由协议无法满足网络的需求,因此多种路由协议共存的情况十分常见。或者出于业务逻辑或行政管理的考虑,会在不同的网络结构中设计和部署不同的路由协议,使路由的层次结构更加清晰可控。
- 在这样的网络环境下,也需要实现全网路由互通。
1.3.路由引入的基本概念
路由引入指的是将路由信息从一种路由协议发布到另一种路由协议的操作。
- 通过路由引入,可以实现路由信息在不同路由协议间传递。
- 执行路由引入时,还可以部署路由控制,从而实现对业务流量的灵活把控。
1.4.OSPF相互引入RIP
AR1
[Huawei]ospf 1
[Huawei-ospf-1]area 0
[Huawei-ospf-1-area-0.0.0.0]network 1.1.1.0 0.0.0.255
AR2
[Huawei]ospf 1
[Huawei-ospf-1]ar 0
[Huawei-ospf-1-area-0.0.0.0]net 1.1.1.0 0.0.0.255
[Huawei]rip 1
[Huawei-rip-1]version 2
[Huawei-rip-1]network 192.168.2.0
AR3
[Huawei]rip 1
[Huawei-rip-1]version 2
[Huawei-rip-1]network 192.168.2.0
[Huawei-rip-1]network 192.168.3.0
查看AR1路由信息
[Huawei]dis ip routing-table 192.168.3.1 //为空不存在
[Huawei]
AR2路由引入
[Huawei]ospf 1
[Huawei-ospf-1]import-route rip 1 cost 123
再次查看AR1路由信息
[Huawei]dis ip routing-table 192.168.3.1
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Table : Public
Summary Count : 1
Destination/Mask Proto Pre Cost Flags NextHop Interface
192.168.3.0/24 O_ASE 150 123 D 1.1.1.2 GigabitEthernet
0/0/0
Proto为O_ASE是其他协议引入的,Cost是123是上面设置的开销
这个时候AR1能不能ping通192.168.3.1呢
答案是不能,路由数据是有去有回,现在只能过去,不能回来
AR2再次路由引入OSPF
[Huawei]rip 1
[Huawei-rip-1]import-route ospf 1 cost 12
AR3这时就有了AR1的路由,AR1可以ping通AR3
1.5.路由引入的方向性
-
路由引入是具有方向性的,将路由信息从路由协议A引入到路由协议B(A-to-B),则路由协议B可获知A中的路由信息,但是此时,A还并不知晓B路由协议中的路由信息,除非配置B-to-A的路由引入
-
路由引入时需要注意以下几点:
- 路由优先级
- 路由回灌
- 路由度量值
1.6.路由引入:路由优先级
1.6.1更改路由引入的优先级
这是全部改
[Huawei]ospf 1 //进入ospf
[Huawei-ospf-1]preference ase 12 //更改引入的路由优先级
精确修改
[Huawei]ospf 1 //进入ospf
[Huawei-ospf-1]preference ase route-policy //更改引入的路由优先级的规则,这里并未完全
1.7路由引入:路由回灌
1.7.1.多协议复杂场景带来的其他问题-路由环路
1.8路由引入:路由度量值
!
- 场景描述:
- 1.在IS-IS中引入OSPF路由。
- 2.在OSPF中引入IS-IS路由。
- 不同的路由协议对路由度量值的定义不同,那么在路由协议之间进行路由引入时,被引入的路由的度量值该如何定义?定义成多少?
在IS-IS中引入OSPF路由,用命令import-route ospf cost 加开销值,开销值范围为0-63。
在OSPF中引入IS-IS路由,用命令import-route isis cost 加开销值,开销值范围为0-16777214。
1.9路由引入场景
路由引入主要涉及以下几种场景:
- 动态路由协议之间的路由引入
- 引入直连路由到动态路由协议
- 引入静态路由到动态路由协议
引入直连路由
import-route direct cost 开销值
引入静态路由
import-route static cost 开销值