16、静态路由

路由表

[Huawei]display ip routing-table //查看路由表 
[Huawei]display ip interface brief //查看IP地址 
[Huawei]display interface brief //查看所有接口信息简表
  • 网络三要素
  • 协议
  • 优先级(AD–管理距离)
  • 度量值(开销值)
  • 路由表中的表项内容包括:
  • destination:目的地址,用来标识IP包的目的地址或者目的网络。
  • mask:网络掩码,与目的地址一起标识目的主机或者路由器所在的网段的地址。
  • proto:Direct----直连;Static----静态;RIP、OSPF、ISIS、BGP----动态
  • pre:标识路由加入IP路由表的优先级。可能到达一个目的地有多条路由,但是优先级的存在让他们先选择优先级高的路由进行利用。
  • cost:路由开销,当到达一个目的地的多个路由优先级相同时,路由开销最小的将成为最优路由。
  • interface:输出接口,说明IP包将从该路由器哪个接口转发。
  • nexthop:下一跳IP地址,说明IP包所经过的下一个路由器。
  • 路由项匹配算法
  • X/Y;目的IP为Z;Z与Y做“与”运算以后,得出结果为X,即匹配成功
192.168.3.0/23     192.168.3.1 25      0.0.0.0/0 
192.168.2.0/23 

11000000.10101000.00000011.00000001 11111111.11111111.11111111.00000000 

11000000.10101000.00000011.00000000 ----->192.168.3.0
  • 路由项的选择:最长掩码匹配规则

路由信息来源

路由项的生成方式有三种:设备自动发现( 直连)、手工配置(静态 )、通过动态路由协议学习(动态)。

  • 直连路由
  • 接口处于UP状态时,设备能够自己去发现去往与自己接口直接相连的网段路由
  • 直连路由产生的条件
  • 接口双UP
*down: administratively down 管理性down
!down: FIB overload down FIB过载关闭
^down: standby 待机
  • 必须配置IP地址
  • 静态路由
  • 对于没有直连的网络,管理员需要手工添加到这些网段的路由。在路由器上手工配置的路由信息被称为静态路由(Static Route),适合规模较小的网络或网络不怎么变化的情况。
  • 动态路由
  • 路由器使用动态路由协议(RIP、OSPF)而获得路由信息被称为动态路由(Dynamic Route),动态路由适合规模较大的网络,能够针对网络的变化自动选择最佳路径。

优先级

  • 下表为华为设备默认
  • 选定不同路由项的,优先级越小,路由越优

路由来源

缺省优先级

直连路由

0

OSPF

10

静态路由

60

RIP

100

BGP(外部、内部、本地)

255

数据流量是双向的

路由配置命令

[Huawei]ip route-static 192.168.2.0 24 192.168.12.2 //静态路由配置命令,分别是目的网段、目的网段的掩码、下一跳地址 
[Huawei]ip route-static 192.168.2.0 24 GigabitEthernet 0/0/2 ---使用在点到点网络配置静态路由 
[Huawei]ip route-static 192.168.2.0 24 GigabitEthernet 0/0/2 192.168.12.2
192.168.12.0/30 Direct 0 0 D 192.168.12.1 GigabitEthernet0/0/0 

192.168.2.0/24 Static 60 0 RD 192.168.12.2 GigabitEthernet0/0/0
  • 协议
  • Direct----直连
  • Static----静态
  • RIP、OSPF、ISIS、BGP----动态
  • 优先级
  • 0-255
  • 开销值
  • 静态路由当中为0
  • 标签
  • D—代表路由已经被下发到FIB表中
  • R—代表路由为迭代路由(一般静态路由配置下一跳,而不配置出接口,则为迭代路由)
  • 路由环路
  • 当两台路由器的路由表中,分别存在一条到达同一网段且下一跳是另一台路由器时,
  • 会产生环路占用带宽,影响正常数据包转发速率
  • 路由需要解封装打开二层,查看三层IP。对路由器CPU造成较大消耗
  • 解决方式—TTL

路由器配置思路:

1、配置IP,检查连通性

2、配置路由,保证全网可达

17、静态路由的扩展配置

  • 等价路由
  • 此时有两个方法解决网络拥堵问题:

1、增加线路带宽----类似于扩宽车道,但是不能无限扩宽

2、增加线路数量----增加一条新车道,其本质也是增加线路带宽

  • 当路由器访问同一个目标网段时,具备多条开销相似的路径时,可以让流量拆分后延多条路径进行传输,达到叠加带宽的效果,减少单条链路数据传输压力。
  • 形成等价路由的条件-----来源相同(同一种路由协议发现的)、开销相同的路由
  • 路由表中存在等价路由之后,前往该目的网段的IP报文路由器会通过所有有效的接口、下一跳转发,这种转发行为被称为负载分担。
  • 环回接口
路由器的虚拟接口,用于测试。 
在模拟器上,通常使用一个环回接口来代表一个真实的用户网段。
  • 配置方法
[r1]interface LoopBack 0 --------创建环回接口
[r1-LoopBack0]ip address 1.1.1.1 24 --------配置环回接口地址
  • 手工汇总
  • 当路由器需要配置多条路由项时,可以选择将其进行子网汇总,减少路由表项数量,降低CPU运算负载,提高转发效率。
就上图而言,如果想要让R5访问R6的三个环回,需要手工写出三个静态路由。 但是我们发现,写出的三个静态路由,具备相同的下一跳,所以我们可以进行路由汇总,使用CIDR 的思想(取相同,去不同) 最终得到一个192.168.0.0/22下一跳为R6的路由项。
  • 路由黑洞
  • 在手工汇总时,可能会包含一些网络中实际不存在的网段,造成流量有去无回的现象,浪费了链路资源。
  • 例如:192.168.0.0/24、192.168.1.0/24、192.168.2.0/24 三个网段经过汇总后得到192.168.0.0/22这个网段。
但是,192.168.0.0/22网段中包含了192.168.3.0/24这个网段,因为这个网段是网络中 不存在的,所以当去往这个网段的流量在到达最后一个路由器时会被丢弃,但是却会占用传输 过程中所经过的所有链路的带宽。 又或者原本该网段通信正常,但是与其直连的路由器上该接口出现问题,导致连接中断,就会 导致该网段无法通信,导致路由黑洞产生。
  • 所以我们在进行汇总和子网划分时一定要合理规划
  • 缺省路由
  • 一条不限定目标的路由。
当B路由器上存在多条网段,并且这些网段不易被汇总,或者网段非固定(浮动大)的情况 
网络管理员很难对B路由器上的所有网段进行精准定位 
增加网络管理员对A路由器的配置、维护工作量 

推荐使用缺省路由,将对于不认识的所有数据信息,均发往B路由器,由B路由器进行下一步转发操作。 

这种情况很类似于重庆,当一个外地人去重庆你会发现,有时候跟着导航走你都是晕头转向 的,在这种情况下,你不如将命运交给重庆的出租车司机,因为他们会比导航更加数据重庆的线路。
  • 配置命令
  • [r1]ip route-static 0.0.0.0 0.0.0.0 192.168.1.2
  • 我们不难看出,这条静态路由的目标网段是0.0.0.0/0;这就代表任何网段。
  • 因为缺省路由代表所有网段,所以会跟任何路由流量进行匹配,但是又由于最长匹配原则,所以只有当路由表中没有其他项匹配流量时,才会选择缺省路由。
  • 注意:
1、每台路由器上仅存在一条缺省路由,且根据最长匹配原则,缺省路由只有在其余所有路由均为匹配上时才会匹配
2、当一个网络中有多台路由器需要配置缺省路由时,缺省路由必须延相同方向进行。
  • 空接口路由
  • 防止环路作用
例如:路由器A与路由器B相连。路由器B上有192.168.0.0/24、192.168.1.0/24、 192.168.2.0/24三个网段,在路由器A上配置去往这三个网段的静态路由,手工汇总方式;此时在路由器B上配置一个缺省路由指向路由器A。当A上有一条去往192.168.3.0/24的流量,A会转发给B,但是对于B而言,是没有到达192.168.3.0/24网段的路由项,所以会根据缺省路由转发给 A。

又或者:路由器A上本来存在的某个网段,突然因为某种原因断了,导致去往该网段的数据在到达路由器A时,被直接丢弃(因为A上已经没有到达目的网段的直连路由了)。但是,如果路由器A上有一条指向源路径的缺省路由,则会产生环路。
  • 解决方法
  • 在存在黑洞的路由器上配置一条通往空接口路由。
  • 在两个路由器之间,如果A路由器发包给B路由器,而B路由器将包又发个A路由器,则在B上配一条空接口路由,(可以改变优先级)。
  • 空接口路由可以是具体网段也可以汇总网段。
  • 空接口
  • NULL 0 口
  • 配置命令
  • [r1]ip route-static 192.168.0.0 22 NULL 0
  • 当配置空接口路由后,此时A发来的去往192.168.3.0/24网段的路由就会匹配上这个空接口路由,流量也就正常结束,不会在网络中继续转发了。
  • 浮动静态路由
  • 通过修改路由项的优先级,实现对路由项的备份。
  • 举例
  • 如上图所示,两台路由器通过两条链路相连,带宽分别为1000M和10M,已知1000M带宽完全可以满足正常的网络通信,而10M不满足,此时,我们就可以将10M的链路作为备份,当1000M链路出现故障时,启用10M的链路,确保网络不会完全断开。
  • 配置命令
  • [r1]ip route-static 192.168.10.0 24 192.168.1.1 preference 100
  • 实际上就是对优先级进行改变,我们都知道优先级越小,路由项越好,我们将走10M带宽链路的静态路由优先级增大,将选择优先级小的1000M链路。