本节书摘来自异步社区《OSPF网络设计解决方案(第2版)》一书中的第2章,第2.8节,作者 【美】Thomas M. Thomas II, CCIE #9360,更多章节内容可以访问云栖社区“异步社区”公众号查看
2.8 案例分析:OSPF网络的构建和收敛
OSPF网络设计解决方案(第2版)
之前的两个案例分析回顾了链路状态数据库以及它的建立过程。本节将通过新的案例分析来讨论本章之前已经介绍过的一些概念,除此以外,本节还将讨论如何构建一个简单的OSPF网络以及网络的收敛。
假设 MatrixNet 是一家专注于影视特效的高科技动画公司,并想要在其核心网络内实施 OSPF。该公司的核心网络内拥有三台通过以太网相互连接的路由器,如图2-19所示。
在本节案例中,你需要在3台Cisco路由器上配置OSPF。但必须首先配置loopback接口,从而为OSPF提供稳定的路由器ID。接着,你需要配置OSPF进程,并在正确的接口启用OSPF。
2.8.1 配置loopback接口
如果路由器当前并未配置loopback接口,那么OSPF将使用活动物理接口中最高的 IP 地址作为路由器 ID。在上述网络中,你选择了 C 类子网地址(192.168.254.0/24)作为整个网络的管理地址。由于loopback接口不受物理接口和链路失效的影响,所以使用loopback接口的IP地址作为RID是非常好的选择。例 2-8 给出了在路由器Neo、Cypher和 Apoc 上配置loopback接口的示例。
参考示例中的输出内容,你可以获取到当前网络中有关OSPF运行的一些有用数据。输出中高亮的部分显示了 OSPF 正在进行路由选择的网络,以及网络内已经向本地路由器发送过路由信息的路由器的RID。例2-11 中给出了show ip ospf命令的输出,该命令显示了本地路由器上关于OSPF更为详细的运行状况信息。
这条show命令显示了大量的OSPF信息,以及执行该命令路由器的OSPF运行状况。通过输入这条命令,你可以查看到OSPF的RID为192.168.254.82,该地址为例2-8中所配置的loopback接口的IP地址。另外,你还可以看到OSPF路由器的类型(本例中为ABR),以及SPF算法已经在该区域内运行的次数(OSPF是基于区域来维护LSDB的)。
如果对路由器进行评估,那么通常需要找出当前路由器已经知晓的其他OSPF路由器和网络。接下来的命令将显示路由器 Neo 已经获知了哪些邻居路由器。例2-12显示了使用show ip ospf neighbor命令查看到的关于邻居路由器的信息。
在上面的输出中,你可以查看到以下内容:
路由器Neo的邻居路由器RID;
每个邻居当前的状态(更多内容将在第3章中进行介绍);
与路由器Neo进行OSPF通信的邻居路由器的IP地址;
与邻居通信的接口。
当网络规模较大,并且OSPF路由器拥有很多邻居时,上面的信息将非常有用。注意输出中State一栏,如前所述,路由器Neo和每一个正在通信的邻居都保持着FULL状态。而State一栏中另一个内容指示了该路由器在网络中所扮演的角色。例如,邻居192.168.254.84为该网络的BDR,而邻居192.168.254.83宣称自己为DROTHER(也就是DROther)。那么这3台路由器谁才是DR呢?你可以使用show ip ospf neighbor detail命令找到答案,如例2-13所示。
show ip ospf neighbor detail命令的输出显示了用于分析OSPF邻居路由器之间通信的所有必要信息。注意,该命令显示了网络中DR和BDR,以及有关OSPF各种计时器的所有信息。
show ip ospf interface命令可以显示关于网络状态的详细描述。使用该命令,你可以验证OSPF在接口上的运行状况和相关的运行参数。由于路由器上的每一个接口都连接到了不同的网络,因此OSPF的一些关键信息都是基于接口的。例2-14给出了该命令的输出示例。
本章最后要介绍的是show ip ospf database命令。通过之前的内容,你已经学习到了LSDB是如何建立的,以及它在OSPF路由条目计算过程中所起到的作用。例2-15显示了在Cisco路由器上查看LSDB的示例。
该命令是基于区域和LSA类型来显示可用LSDB的;相关的详细内容我们将在第3章中进行讨论。这里,你可以查看到显示的每一条链路。