在学习OSPF之前了解一些概念: 1.自治系统(Autonomous system ,AS): 在共同管理下的互联网络,一些运行相同协议的路由的集合。 2.内部网关路由协议(IGP):用于在单一AS内决策路由的协议。 3.外部网关路由协议(EGP):用于在多个AS间的通信。
4.OSPF路由协议:开放式最短路径优先协议(Open Shortest Path Frist) 是基于开放标准的链路状态路由选择协议。它完成两大功能:路径选择和路径交换。 5.OSPF的工作过程: RIP路由协议只保存一份路由表,OSPF需要保存三份表: (1)邻居列表:列出每台路由器已经建立邻接关系的全部邻居路由器。 (2)链路状态数据库:列出网络中其他路由器的信息,显示出全网的网络拓扑。 (3)路由表:列出通过Dijkstra算法计算出的到达每个相连网络的最佳路径。
该过程为: 与邻居路由器建立邻接关系-->互相同步链路状态数据库-->使用最短路径算法,选择最短路径-->构建路由表。 6.OSPF的基本概念: (1)OSPF是一种链路状态型的路由协议,不会产生环路问题。 (2)OSPF将AS分割成多个小区域,OSPF的路由器只在区域内部学习完整的链路状态信息,不必了解整个AS内部的所有链路状态。 就像你只需要了解你本班或本公司的人,而不必去了解之外的人。 (3)区域是通过一个32位的区域ID(Area ID)来标识,可表示成十进制数或点分十进制数。Cisco路由器两种表示方式都可以。在OSPF配置中,区域是分别在各个接口上定义的。 区域ID相同的一组逻辑上的OSPF路由器,区域中的所有路由器的链路状态库都相同。 (4)区域分为骨干区域、非骨干区域。 Area 0是为骨干区域保留的区域ID号,是一个特殊的OSPF区域 ,它负责区域间的路由信息传播。非骨干区域可自定义ID。 (5)区域边界路由器:用来连接骨干区域和其他区域的路由器就是区域边界路由器
7.Router ID (1)它是在OSPF区域内唯一标识路由器的IP地址; (2)获取途径:①选取所有Loopback接口上数值最高的IP地址 ②如果路由器没有配置Loopback 口,就选择活动物理接口IP最高的。 Loopback 口作为Route ID比任何其他物理接口都更稳定。只有当路由器失效时,它才会失效。 在实际工程中配置OSPF时 ,都需要手工指定路由器的Route ID,这已成为一种标配。 8.DR和BDR 为了避免路由器传输信息的混乱和占用资源,提出了DR和BDR (1)DR,指定路由器,同网络中的其他路由器建立邻接关系,并负责将网段上的变化告知它们。 (2)BDR,备份指定路由器,实现冗余,当DR失效时,顶替DR (3)它们的选举: ①自动选举:Route ID最大的路由器为DR,第二大为BDR ②手动选举:设置路由接口的优先级,范围为0~255,数值越大,优先级越高 默认为1。如果为0,则不参与选举。 优先级相同时,比较Route ID。 可通过命令修改:ip ospf priority 9.OSPF的度量值为:cost (开销) 10.OSPF邻接关系的建立:
OSPF 承载在 IP 协议上,使用89号协议; (1)OSPF的数据包类型: Hello包 :发现和为维持邻居关系,选举DR和BDR 数据库描述包(DBD):向邻居发送摘要信息以同步链路状态数据库。 链路状态请求包(LSR):在路由器收到包含新信息的DBD后发送,请求更详细的信息 链路状态更新包(LSU):收到LSR后,发送链路状态通告(LSA),一个LSU可能包含好几个LSA。 链路状态确认包(LSAck):确认已经收到LSU,每个LSA需要被分别确认。
(2)建立连接关系的七种状态: 失效、初始、双向、准启动、交换、加载、完全邻接
(3)建立的详细过程:(以A和B两个路由器讲解) 失效状态:A和B没有交换任何信息 初始状态:A发送Hello包,包里有A的IP,发现邻居B,被B接收 双向状态:B发送Hello包,包里有A、B的IP,A收到后,选举DR与BDR 准启动状态:选举完成后,DR与BDR与其他路由器建立连接关系,在此过程中,两个邻接l路由建立 主 / 从 关系。(假设A为主,B为从) 交换状态:主/从路由器交换数据描述包(DBD) A和B交换数据描述包(DBD)
加载状态:如果收到的DBD有更新的LSA,路由器(A向B、B向A)会向对方请求更详细的信息即链路状态请求包(LSR),对方回复链路状态更新包(LSU),对方发送链路状态确认包(LSAck)确认收到。 完全邻接状态:当路由器完成数据库同步后,链路状态数据库完全一致时,达到完全连接状态。