OSPF的优化:

        OSPF优化的实质是为了减少LSA的更新量,主要方法有:汇总和设置特殊区域

1.汇总:

OSPF进行区域汇总的作用是为了减少OSPF骨干区域从非骨干区域学习到的路由信息。而OSPF汇总实质上是进行区域汇总。区域汇总就是对该区域内传递路由信息的LSA进行汇总。

        区域汇总又分为域间路由汇总和域外路由汇总。

        如图,此时area0,area2为非骨干链路,R2作为ABR(area0和area1),R4作为ABR(area0和area2);圆圈作为域外区域运行OSPF协议,R5作为ASBR(重发布R5的环回信息)

        此时打开R3的OSPF路由表:(会发现R3中到达其他区域的路由信息很多,此时可以进行OSPF路由汇总)

<r3>display   ip routing-table  protocol  ospf 
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Public routing table : OSPF
         Destinations : 10       Routes : 10       

OSPF routing table status : <Active>
         Destinations : 10       Routes : 10

Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface

        1.0.0.0/30  OSPF    10   2           D   2.0.0.1         GigabitEthernet
0/0/0
        4.0.0.0/30  OSPF    10   2           D   3.0.0.2         GigabitEthernet
0/0/1
    192.168.1.1/32  OSPF    10   2           D   2.0.0.1         GigabitEthernet
0/0/0
    192.168.2.1/32  OSPF    10   2           D   2.0.0.1         GigabitEthernet
0/0/0
    192.169.1.1/32  OSPF    10   1           D   2.0.0.1         GigabitEthernet
0/0/0
    192.169.2.1/32  OSPF    10   1           D   2.0.0.1         GigabitEthernet
0/0/0
    192.171.1.1/32  OSPF    10   1           D   3.0.0.2         GigabitEthernet
0/0/1
    192.171.2.1/32  OSPF    10   1           D   3.0.0.2         GigabitEthernet
0/0/1
    192.172.1.0/24  O_ASE   150  1           D   3.0.0.2         GigabitEthernet
0/0/1
    192.172.2.0/24  O_ASE   150  1           D   3.0.0.2         GigabitEthernet
0/0/1

OSPF routing table status : <Inactive>
         Destinations : 0        Routes : 0

 ①域间路由汇总:

通过区域间的ABR上将传递的三类LSA进行汇总(汇总后保存本区域的前三类lsa信息),只能在ABR上进行汇总操作

        在图中就是对R2和R4进行汇总(域间路由汇总是作用在ABR上的)

//对区域0和区域1的域间ABR进行汇总   #!!!注意,汇总是汇总非骨干路由信息
[r2]ospf 1 router-id  2.2.2.2
[r2-ospf-1-area-0.0.0.0]area 1
[r2-ospf-1-area-0.0.0.1]abr-summary 192.168.0.0   255.255.252.0
[r2-ospf-1-area-0.0.0.1]abr-summary 192.169.0.0 255.255.252.0

//此时打开R3的OSPF路由表查看路由信息
<r3>display  ip routing-table  protocol  ospf 
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Public routing table : OSPF
         Destinations : 8        Routes : 8        

OSPF routing table status : <Active>
         Destinations : 8        Routes : 8

Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface

        1.0.0.0/30  OSPF    10   2           D   2.0.0.1         GigabitEthernet
0/0/0
        4.0.0.0/30  OSPF    10   2           D   3.0.0.2         GigabitEthernet
0/0/1
    192.168.0.0/22  OSPF    10   2           D   2.0.0.1         GigabitEthernet
0/0/0
    192.169.0.0/22  OSPF    10   1           D   2.0.0.1         GigabitEthernet
0/0/0
    192.171.1.1/32  OSPF    10   1           D   3.0.0.2         GigabitEthernet
0/0/1
    192.171.2.1/32  OSPF    10   1           D   3.0.0.2         GigabitEthernet
0/0/1
    192.172.1.0/24  O_ASE   150  1           D   3.0.0.2         GigabitEthernet
0/0/1
    192.172.2.0/24  O_ASE   150  1           D   3.0.0.2         GigabitEthernet
0/0/1

OSPF routing table status : <Inactive>
         Destinations : 0        Routes : 0


#此时区域0和区域2的路由信息已经被汇总

此时可以从汇总之后的R4的LSDB表上看到,area1的LSDB信息以及被汇总 

ospf路由汇总如何进行 ospf路由汇总的作用_OSPF

 再去未汇总前的R2的LSDB表上查看:

ospf路由汇总如何进行 ospf路由汇总的作用_OSPF_02

可以明显的对比出R2在汇总后,本地的路由LSA信息减少对比R4

此时再在R4上进行汇总:

//对区域0和区域2的域间ABR进行汇总  
[r4]ospf  1  router-id  4.4.4.4
[r4-ospf-1]area 2
[r4-ospf-1-area-0.0.0.2]abr-summary  192.171.0.0  255.255.252.0

//此时在去打开R3的ospf路由表,此时区域1和区域2的路由信息以及汇总完
<r3>display   ip routing-table  protocol  ospf 
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Public routing table : OSPF
         Destinations : 7        Routes : 7        

OSPF routing table status : <Active>
         Destinations : 7        Routes : 7

Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface

        1.0.0.0/30  OSPF    10   2           D   2.0.0.1         GigabitEthernet
0/0/0
        4.0.0.0/30  OSPF    10   2           D   3.0.0.2         GigabitEthernet
0/0/1
    192.168.0.0/22  OSPF    10   2           D   2.0.0.1         GigabitEthernet
0/0/0
    192.169.0.0/22  OSPF    10   1           D   2.0.0.1         GigabitEthernet
0/0/0
    192.171.0.0/22  OSPF    10   1           D   3.0.0.2         GigabitEthernet
0/0/1
    192.172.1.0/24  O_ASE   150  1           D   3.0.0.2         GigabitEthernet
0/0/1
    192.172.2.0/24  O_ASE   150  1           D   3.0.0.2         GigabitEthernet
0/0/1

OSPF routing table status : <Inactive>
         Destinations : 0        Routes : 0

此时再去R3的LSDB表上查看信息: 

ospf路由汇总如何进行 ospf路由汇总的作用_网络_03

②域外路由汇总

只能在ASBR设备上生效。(汇总后保存本地的5类和7类LSA信息)

[r5]ospf 1 router-id  5.5.5.5
[r5-ospf-1]asbr-summary  192.172.0.0  255.255.252.0

//此时打开R3上的OSPF路由表 --- 此时R5的域外环回192.172.1.0和192.172.2.0已经别汇总完
<r3>display   ip routing-table  protocol  ospf 
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Public routing table : OSPF
         Destinations : 6        Routes : 6        

OSPF routing table status : <Active>
         Destinations : 6        Routes : 6

Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface

        1.0.0.0/30  OSPF    10   2           D   2.0.0.1         GigabitEthernet
0/0/0
        4.0.0.0/30  OSPF    10   2           D   3.0.0.2         GigabitEthernet
0/0/1
    192.168.0.0/22  OSPF    10   2           D   2.0.0.1         GigabitEthernet
0/0/0
    192.169.0.0/22  OSPF    10   1           D   2.0.0.1         GigabitEthernet
0/0/0
    192.171.0.0/22  OSPF    10   1           D   3.0.0.2         GigabitEthernet
0/0/1
    192.172.0.0/22  O_ASE   150  2           D   3.0.0.2         GigabitEthernet
0/0/1

OSPF routing table status : <Inactive>
         Destinations : 0        Routes : 0

此时可以对比R3汇总域外环回的信息:(汇总前) 

ospf路由汇总如何进行 ospf路由汇总的作用_网络协议_04

 此时可以对比R3汇总域外环回的信息:(汇总后) 

ospf路由汇总如何进行 ospf路由汇总的作用_网络协议_05

 ③域外汇总网段LSA中的开销值:

OSPF对域外汇总网段的开销值有两种情况(之前的五类和七类LSA已经提到过)

        类型1:如果开销值类型为类型1,则汇总网段的开销值等于明细路由的最大开销值(种子度量值)

        类型2:如果开销值类型为类型2,则汇总网段的开销值等于明细路由的最大开销值+x(默认为1)

而具体的修改种子度量值则是在ASBR汇总时就行修改的(默认为类型1)

//在ASBR上进行汇总,然后修改cost值
[r5-ospf-1]asbr-summary 192.172.0.0  255.255.252.0 cost 5

//此时在打开OSPF表格查看,域外的cost值
<r3>display   ip  routing-table  protocol  ospf 
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Public routing table : OSPF
         Destinations : 6        Routes : 6        

OSPF routing table status : <Active>
         Destinations : 6        Routes : 6

Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface

        1.0.0.0/30  OSPF    10   2           D   2.0.0.1         GigabitEthernet
0/0/0
        4.0.0.0/30  OSPF    10   2           D   3.0.0.2         GigabitEthernet
0/0/1
    192.168.0.0/22  OSPF    10   2           D   2.0.0.1         GigabitEthernet
0/0/0
    192.169.0.0/22  OSPF    10   1           D   2.0.0.1         GigabitEthernet
0/0/0
    192.171.0.0/22  OSPF    10   1           D   3.0.0.2         GigabitEthernet
0/0/1
    192.172.0.0/22  O_ASE   150  5           D   3.0.0.2         GigabitEthernet
0/0/1

OSPF routing table status : <Inactive>
         Destinations : 0        Routes : 0

2.设置特殊区域:减少非骨干区域的LSA信息

特殊区域:

        OSPF一共存在四种特殊区域,四个特殊区域又分为两大类,每一个大类又再细分为两小类

第一大类:

第一大类的特殊区域主要作用于远离骨干的区域(不包括ASBR区域)

①特殊区域(stub):末梢区域

要求: 1.不能是骨干区域 2.区域中不能存在虚链路(跨区域) 3.区域中不能存在ASBR(不能重发布) 4.使用管道将不规则区域而合法化的区域可以配置

         而满足要求的区域可以被配置为末梢区域(STUB)

末梢区域后,这个区域将不再接受4类和5类LSA(不接受域外信息)。而为了保证末梢区域正常访问到域外的路由,所以必须要有一条缺省路由指向骨干区域,而当配置为末梢区域后,将自动生成一个指向骨干的三类缺省

 注意:在对应area区域的ABR上配置完末梢区域后,也需要在该区域内其他的路由器上也配置STUB (hello上特殊区域要对应匹配,否则无法建立邻居关系)。配置完末梢区域后,末梢区域内只会保存1.2.3类的LSA在LSBD表上

//R2上也要配置对应的stub
[r2]ospf 1 router-id  2.2.2.2
[r2-ospf-1]area 1
[r2-ospf-1-area-0.0.0.1]stub

//R1上也要配置对应的stub --- 否则无法特殊区域无法匹配 --建立不了邻居关系
[r1]ospf 1 router-id  1.1.1.1
[r1-ospf-1]area 1
[r1-ospf-1-area-0.0.0.1]stub

//此时打开R1的LSDB表
[r1]display   ospf  lsdb 

	 OSPF Process 1 with Router ID 1.1.1.1
		 Link State Database 

		         Area: 0.0.0.1
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 Router    2.2.2.2         2.2.2.2             83  60    80000005       1
 Router    1.1.1.1         1.1.1.1             86  60    80000004       1
 Network   1.0.0.2         2.2.2.2             83  32    80000002       0
 Sum-Net   0.0.0.0         2.2.2.2            128  28    80000001       1
 Sum-Net   192.170.2.1     2.2.2.2            128  28    80000001       1
 Sum-Net   192.170.1.1     2.2.2.2            128  28    80000001       1
 Sum-Net   2.0.0.0         2.2.2.2            128  28    80000001       1
 Sum-Net   192.171.0.0     2.2.2.2            128  28    80000001       2
 Sum-Net   4.0.0.0         2.2.2.2            128  28    80000001       3
 Sum-Net   3.0.0.0         2.2.2.2            128  28    80000001       2

②特殊区域(Totally stub):完全末梢区域

        在末梢区域的基础上进一步拒绝学习3类LSA(仅保留3类的缺省路由) 

        完全末梢区域内的LSDB数据库表只有一条缺省路由和本区域内的1类和2类LSA信息

#stub no-summary 只需要在ABR上设置,无需在stub区域内的其他路由器上配置
[r2-ospf-1-area-0.0.0.1]stub no-summary 


//此时R1上的LSDB表上已经没有3.4.5.7类LSA(有且仅有一条3类的缺省路由)
[r1]display ospf lsdb

	 OSPF Process 1 with Router ID 1.1.1.1
		 Link State Database 

		         Area: 0.0.0.1
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 Router    2.2.2.2         2.2.2.2             39  60    80000006       1
 Router    1.1.1.1         1.1.1.1             35  60    80000009       1
 Network   1.0.0.1         1.1.1.1             35  32    80000002       0
 Sum-Net   0.0.0.0         2.2.2.2            341  28    80000001       1

第二大类:

        第二大类的特殊区域主要作用于远离骨干的ASBR区域(不包括ABR区域)

①特殊区域(NSSA):

   1.不能是骨干区域 2.区域中不能存在虚链路(跨区域) 3.区域中存在ASBR(重发布)

        满足这种要求的区域可以配置为非完全末梢区域(NSSA),而配置完末梢区域后,完全末梢区域内只会保存1类,2类,3类的LSA,并且这个区域将不再接受4类和5类LSA(相当于不接受域外信息)。此时引入7类LSA(相当于4类和5类的重命名,作用等同于4类和5类LSA),在NSSA域内,5类LSA被转化为7类LSA,而7类LSA只存在于NSSA内,此时连接骨干区域的ABR相当于变成了ASBR,转化7类为5类(省去4类LSA)发送到骨干区域。

       拒绝来自骨干的域外信息的,只会接受本地区域内的域外信息(此时用7类LSA表示)。原因:NSSA区域内没有4类和5类LSA信息,所以接受不到骨干区域发来的其他的域外信息。

        注意:除了在ASBR上对应的area配置为nssa,这个区域内的其他路由器也要配置(否则特殊区域不匹配,无法建立邻居关系)

//ABSR上配置为nssa区域
[r5]ospf 1 router-id 5.5.5.5
[r5-ospf-1]area 2
[r5-ospf-1-area-0.0.0.2]nssa 

//此时打开R4上的LSDB表
[r4]display  ospf  lsdb 

	 OSPF Process 1 with Router ID 4.4.4.4
		 Link State Database 

		         Area: 0.0.0.0
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 Router    4.4.4.4         4.4.4.4             56  36    8000000C       1
 Router    2.2.2.2         2.2.2.2            572  36    8000000A       1
 Router    3.3.3.3         3.3.3.3            512  72    8000000C       1
 Network   3.0.0.2         4.4.4.4            511  32    80000006       0
 Network   2.0.0.1         2.2.2.2            572  32    80000007       0
 Sum-Net   192.169.0.0     2.2.2.2            556  28    80000007       0
 Sum-Net   192.171.0.0     4.4.4.4             56  28    80000008       0
 Sum-Net   4.0.0.0         4.4.4.4             56  28    8000000A       1
 Sum-Net   1.0.0.0         2.2.2.2            556  28    80000007       1
 Sum-Net   192.168.0.0     2.2.2.2            549  28    80000002       1
 
		         Area: 0.0.0.2
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 Router    4.4.4.4         4.4.4.4             15  60    80000004       1
 Router    5.5.5.5         5.5.5.5             16  36    80000005       1
 Network   4.0.0.2         5.5.5.5             16  32    80000001       0
 Sum-Net   192.169.0.0     4.4.4.4             56  28    80000001       2
 Sum-Net   192.170.2.1     4.4.4.4             56  28    80000001       1
 Sum-Net   192.170.1.1     4.4.4.4             56  28    80000001       1
 Sum-Net   2.0.0.0         4.4.4.4             56  28    80000001       2
 Sum-Net   1.0.0.0         4.4.4.4             56  28    80000001       3
 Sum-Net   192.168.0.0     4.4.4.4             56  28    80000001       3
 Sum-Net   3.0.0.0         4.4.4.4             56  28    80000001       1
 NSSA      0.0.0.0         4.4.4.4             56  36    80000001       1
 NSSA      192.172.0.0     5.5.5.5             74  36    80000001       5
 

		 AS External Database
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 External  192.172.0.0     4.4.4.4             14  36    80000001       5
 External  192.172.0.0     5.5.5.5           2360  36    80000002       5

②特殊区域(Totally NSSA):

完全NSSA区域,在NSSA区域的基础上进一步拒绝学习3类LSA

        完全的NSSA区域的LSDB表上只会有1类,2类和3类LSA(NSSA还需要通过7类LSA来传递本地的域外信息到骨干区域)。但是完全NSSA区域中会有两个缺省路由到骨干链路(一个为3类缺省,一个为7类缺省),但是因为3类LSA的优先级高于7类LSA,所以在NSSA的路由表上选择3类缺省加入OSPF路由表上

        只需要在ASBR上设置,无需在stub区域内配置

//配置在ABR上
[r4]ospf 1 router-id  5.5.5.5
[r4-ospf-1]area 2
[r4-ospf-1-area-0.0.0.2]nssa  no-summary

[r4]display ospf  lsdb 

	 OSPF Process 1 with Router ID 4.4.4.4
		 Link State Database 

		         Area: 0.0.0.0
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 Router    4.4.4.4         4.4.4.4            392  36    8000000D       1
 Router    2.2.2.2         2.2.2.2            908  36    8000000B       1
 Router    3.3.3.3         3.3.3.3            848  72    8000000D       1
 Network   3.0.0.2         4.4.4.4            848  32    80000007       0
 Network   2.0.0.1         2.2.2.2            908  32    80000008       0
 Sum-Net   192.169.0.0     2.2.2.2            892  28    80000008       0
 Sum-Net   192.171.0.0     4.4.4.4             40  28    8000000A       0
 Sum-Net   4.0.0.0         4.4.4.4             40  28    8000000C       1
 Sum-Net   1.0.0.0         2.2.2.2            892  28    80000008       1
 Sum-Net   192.168.0.0     2.2.2.2            885  28    80000003       1
 
		         Area: 0.0.0.2
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 Router    4.4.4.4         4.4.4.4             29  60    8000000A       1
 Router    5.5.5.5         5.5.5.5             30  36    8000000B       1
 Network   4.0.0.2         5.5.5.5             31  32    80000002       0
 Sum-Net   0.0.0.0         4.4.4.4             40  28    80000001       1
 NSSA      0.0.0.0         4.4.4.4             30  36    80000003       1
 NSSA      192.172.0.0     5.5.5.5           1501  36    80000001       5
 

		 AS External Database
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 External  192.172.0.0     4.4.4.4             30  36    80000001       5

总结:

        在配置特殊区域时,一定要注意缺省方向。自动生成的缺省必须要和手动设置的缺省方向一致    

        如果OSPF区域想要去访问ISP,默认需要将ISP设置在骨干区域内。原因:其他区域会有缺省到达骨干区域(需要注意手动设置的缺省和特殊特殊区域的缺省方向)

OSPF中的特殊标记位:

E位:一般置1,代表支持5类LSA(置0,表示为特殊区域)

N位:一般置0,只有在NSSA区域中置1,代表支持7类LSA

P位:如果置1,则代表该LSA信息支持7类转化为5类

//取一个7类的LSA查看

  Type      : NSSA
  Ls id     : 192.172.0.0
  Adv rtr   : 5.5.5.5  
  Ls age    : 533 
  Len       : 36 
  Options   :  NP  
  seq#      : 80000001 
  chksum    : 0x71ce
  Net mask  : 255.255.252.0 
  TOS 0  Metric: 5 
  E type    : 2
  Forwarding Address : 4.0.0.2 
  Tag       : 1 
  Priority  : Low