OSPF(五)OSPF外部路由

文章目录

  • 前言
  • 外部路由计算
    • 概念
    • 外部路由配置
    • 五类LSA与四类LSA
      • 五类LSA:AS-External-LSA
      • 四类LSA:ASBR-Summary-LSA
      • 为什么要五类LSA的同时又要ABR发送四类LSA?
    • 外部路由计算过程
      • Area 0中计算
      • 非骨干区域外部路由计算
  • 外部路由的类型
  • 次优外部路由
    • 产生原因
    • Forwarding Address

前言

一个企业内部可能由于网络的升级或者是其他的原因,新老部门之间用的是不一样的路由协议。或者是企业总部分部可能用的是不一样的路由协议。又或者一个企业除了企业内部需要通信以外,还需要和外部网络进行通信,不同的企业有互访的需求。
假设A公司网络部署OSPF路由实现企业内部通信,因为业务需求需要访问B公司的WEB服务器,然而B公司不一定采用的OSPF协议,有可能是RIP,有可能是静态路由,或者是其他的路由协议,这时候A公司就需要用到OSPF外部路由来获取B公司的路由信息。

外部路由计算

如下图就为前言中描述的场景。
OSPF(五)OSPF外部路由_第1张图片
如图:
RTA配置:

[RTA]ip route-static 10.1.60.0 255.255.255.0 10.1.16.6
[RTA]ospf 1
[RTA-ospf-1]import-route static 

配置这条静态路由之后,将这条静态路由引入到OSPF中。

注意:实际中路由需双向可达,这里只介绍了OSPF引入外部路由的过程,双向可达,RTF需要配置OSPF协议,引入它的外部路由

本例中,RTA上配置了一条静态路由,目的网络是10.1.60.0/24,下一跳是RTF。
在RTA的OSPF进程下,将配置的静态路由重发布到A公司的OSPF网络中,其中引入外部路由的OSPF路由器叫做ASBR,RTA会生成一条AS-External-LSA(五类LSA),用于描述如何从ASBR到达外部目的地;RTB和RTC会生成一条ASBR-Summary-LSA(四类LSA),用于描述如何从ABR到达ASBR。四类LSA和五类LSA,将被OSPF路由器用来计算外部路由。

概念

  1. ASBR:

引入外部路由的OSPF路由器(上图为RTA)

  1. ABR:

边界路由器:OSPF中骨干区域与其他区域交接处的路由器

  1. 五类LSA:AS-External-LSA(AS外部LSA)

ASBR产生,用于描述如何从ASBR到达外部目的地。
用来通告到达OSPF自治系统外部的目的地或者OSPF自治系统外部的缺省路由的LSA。自治系统外部LSA是链路状态数据库中唯一不与具体的区域相关联的LSA通告。外部LSA通告将在整个自治系统中进行泛洪扩散。

  1. 四类LSA:ASBR-Summary-LSA(ASBR汇总LSA)

ABR产生,用于描述如何从ABR达到ASBR(标识ASBR的位置);ASBR汇总LSA除了所通告的目的地是一台ASBR路由器而不是一个网络外,其他的和网络汇总LSA都是一样的。

外部路由配置

  1. 配置对方的路由协议(如:R1对面是用的OSPF协议,那么R1就用OSPF协议宣告相邻网段)
  2. 进入协议视图配置命令import-router [对方路由协议]注意需要双向配置
    OSPF(五)OSPF外部路由_第2张图片
[R1-ospf-1]network 192.168.2.0 0.0.0.255
[R1-rip-1]import-router ospf
[R2-rip-1]network 192.168.1.0 
[R2-ospf-1]import-router rip

其他路由协议同理。

五类LSA与四类LSA

OSPF(五)OSPF外部路由_第3张图片

五类LSA:AS-External-LSA

我们用display ospf lsdb ase self-originate查看LSDB中路由器自己生成的外部路由。也就是查看五类LSA。

display ospf lsdb ase self-originate 

  OSPF Process 1 with Router ID 1.1.1.1
  Link State Database
 Type : External           //LSA类型
 Ls id : 10.1.60.0         //目的网段地址
 Adv rtr : 1.1.1.1         //产生此五类LSA ASBR的Router ID (上图:RTA)
 Ls age : 1340 
 Len : 36 
 Options : E              //代表是外部路由的LSA
 seq# : 80000004
 chksum : 0xb5cc
 Net mask : 255.255.255.0   //网络掩码
 TOS 0 Metric: 1                  //开销值,外部路由到ASBR的metric值,默认情况是1
 E type : 2                           //外部路由的类型,下文详解。默认为Type 2
 Forwarding Address : 0.0.0.0      //次优路径时详细将讲解。
 Tag  : 1 
 Priority : Low      //优先级,低,因为外部路由优先级低于内部路由

四类LSA:ASBR-Summary-LSA

我们用display ospf lsdb asbr self-originate查看四类LSA

display ospf lsdb asbr self-originate 

​      Area: 0.0.0.1
  Link State Database 
  
 Type : Sum-Asbr   //LSA类型
 Ls id : 1.1.1.1   //ASBR的Router ID
 Adv rtr : 2.2.2.2   //产生此四类LSA ABR的Router ID(上图:RTB)
 Ls age : 15 
 Len : 28 
 Options : E 
 seq# : 80000005
 chksum : 0xf456
 Tos 0 metric: 1        //从RTB到达此ASBR的开销

为什么要五类LSA的同时又要ABR发送四类LSA?

如上图,RTA产生五类LSA,并将五类LSA在整个AS(自治区域)中泛洪扩散。并在泛洪的过程中五类LSA信息不会像三类LSA一样发生变化

结合五类LSA的信息:

 Ls id : 10.1.60.0         //目的网段地址
 Adv rtr : 1.1.1.1         //产生此五类LSA ASBR的Router ID (上图:RTA)
 
 TOS 0 Metric: 1     

在Area 0中的路由器肯定能找到ASBR路由器的位置。但是在非骨干区域。如Area 2中的RTE,不清楚ASBR的位置。
所以我们需要ABR担起责任,发布四类LSA,来告诉非骨干区域中的路由器ASBR的具体位置。

外部路由计算过程

Area 0中计算

此时不需要四类LSA,所以计算只需要:一类LSA、五类LSA

OSPF(五)OSPF外部路由_第4张图片
以Area 0中RTB的外部路由计算为例:RTB收到五类LSA后,根据Adv rtr字段1.1.1.1发现,ASBR与自己同属于一个区域(Area 0),再根据Ls id、Net mask、Metric字段最终生成目的网络10.1.60.0/24 cost=1,下一跳为RTA的路由。

非骨干区域外部路由计算

此时计算需要四类LSA、五类LSA、一类LSA、二类LSA(多路访问网络中)
OSPF(五)OSPF外部路由_第5张图片
以Area 1中RTD的外部路由计算为例:RTD收到五类LSA后,根据Adv rtr字段1.1.1.1发现,ASBR与自己不同属于一个区域,再查找Ls id为1.1.1.1的四类LSA,发现此四类LSA的Adv rtr为2.2.2.2。再根据五类LSA中的LS id、Net mask、Metric字段最终生成目的网络10.1.60.0/24 cost=1,下一跳为RTB的路由。

RTB、RTD最终计算出的路由条目cost都为1,根据物理拓扑可知,RTD开销值明显大于RTB,那么问题出在哪里呢?

这是由于外部路由的类型导致的。

外部路由的类型

上文五类LSA中:E type : 2

Type Cost
第一类外部路由 (External Type-1) AS内部开销值+AS外部开销值
第二类外部路由 (External Type-2) AS外部开销值

OSPF引入外部路由,共有两种类型可选:

  1. 第一类外部路由的AS外部开销值被认为和AS内部开销值是同一数量级的,因此第一类外部路由的开销值为AS内部开销值(路由器到ASBR的开销)与AS外部开销值之和;这类路由的可信程度高一些,所以计算出的外部路由的开销与自治系统内部的路由开销是相当的,并且和OSPF自身路由的开销具有可比性。
  2. 第二类外部路由的AS外部开销值被认为远大于AS内部开销值,因此第二类外部路由的开销值只包含AS外部开销,忽略AS内部开销(默认为第二类),这类路由的可信度比较低。

注意:

1. 默认情况下,OSPF外部路由采用的是第二类外部路由。
2. 路由优先级:第一类外部路由>第二类外部路由
3. LSA总路由优先级:一类LSA>三类LSA>第一类外部路由>第二类外部路由(没有二类、四类的原因是它们不传递路由信息,只传递拓扑信息。)

如下图:以RTD为例计算路径开销。假设路径开销值都为1。
OSPF(五)OSPF外部路由_第6张图片

次优外部路由

产生原因

OSPF(五)OSPF外部路由_第7张图片
如图,R1与R2配置了OSPF协议,R2和R3配置了RIP协议。此时在R2上进行双向引入外部路由。
此时R2作为OSPF中的ASBR,发布五类LSA进行通告。告诉R1想要发送信息到192.168.2.0网段,先要经过ASBR也就是R2,然后R2再将信息发送给R3。这时候我们发现,其实R1发送给192.168.2.0网关消息,有更优的路径。选择从R1到R2到R3的路径不是最优的。

此时R1的路由表:

dis ip routing-table 
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
         Destinations : 5        Routes : 5        

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
    192.168.1.0/24  Direct  0    0           D   192.168.1.1     Ethernet0/0/0
    192.168.1.1/32  Direct  0    0           D   127.0.0.1       Ethernet0/0/0
    192.168.2.0/24  O_ASE   150  1           D   192.168.1.2     Ethernet0/0/0

注意:192.168.2.0/24 O_ASE 150 1 D 192.168.1.2 Ethernet0/0/0

那么我们怎么解决呢?

Forwarding Address

OSPF通过设置 Forwarding Address来解决。

通常情况下,ASBR引入外部路由产生的五类LSA中Forwarding Address字段设置为0.0.0.0。(回顾上文拓扑图中RTA的五类LSA)

对于上图中的场景,RTB路由表中到达192.168.2.0/24的下一跳地址为192.168.1.3。192.168.1.3所属网段192.168.1.0/24运行OSPF,所以RTB生成的五类LSA中,Forwarding Address被设置为192.168.1.3。
OSPF(五)OSPF外部路由_第8张图片
R2产生的五类LSA:

[r2]display ospf lsdb ase self-originate 

	 OSPF Process 1 with Router ID 192.168.1.2
		 Link State Database

  Type      : External
  Ls id     : 192.168.2.0
  Adv rtr   : 192.168.1.2  
  Ls age    : 164 
  Len       : 36 
  Options   :  E  
  seq#      : 80000001 
  chksum    : 0x7f0c
  Net mask  : 255.255.255.0 
  TOS 0  Metric: 1 
  E type    : 2
  ==Forwarding Address : 192.168.1.3
  Tag       : 1 
  Priority  : Low
  Type      : External
  Ls id     : 192.168.1.0
  Adv rtr   : 192.168.1.2  
  Ls age    : 164 
  Len       : 36 
  Options   :  E  
  seq#      : 80000001 
  chksum    : 0x23d6

注意: Forwarding Address : 192.168.1.3

当RTA收到五类LSA时,发现Forwarding Address字段非0,其值为10.1.123.3,所以RTA按照Forwarding Address计算下一跳。

R1路由表:

dis ip routing-table 
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
         Destinations : 5        Routes : 5        

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
    192.168.1.0/24  Direct  0    0           D   192.168.1.1     Ethernet0/0/0
    192.168.1.1/32  Direct  0    0           D   127.0.0.1       Ethernet0/0/0
    192.168.2.0/24  O_ASE   150  1           D   192.168.1.3     Ethernet0/0/0

注意:192.168.2.0/24 O_ASE 150 1 D 192.168.1.3 Ethernet0/0/0

你可能感兴趣的:(网络,网络,路由器,服务器)