《面试的时候被问了个问题ospf邻居关系如何建立.doc》由会员分享,可在线阅读,更多相关《面试的时候被问了个问题ospf邻居关系如何建立.doc(9页珍藏版)》请在金锄头文库上搜索。
1、面试的时候被问了个问题面试的时候被问了个问题 OSPFOSPF 邻居关邻居关 系如何建立系如何建立找了些资料,窃取别人的劳动成果,得出以下结论:OSPF:OpenShortestPathFirstOSPF 路由协议是由 IETF 组织开发,作为 RIP 路由协议的替代协议,解决 RIP 路由协议的固有问题。是 IETF 组织推荐使用的 IGP 协议。OSPF 路由协议是一种链路状态协议,使用 SPF 算法进行最佳路由计算。作为链路状态协议,OSPF 协议的主要优点在于路由表的快速收敛,对大型网络的支持以及不易受到错误路由信息的影响。OSPF 路由协议其他的的特点如下:使用 area 的概念,降
2、低协议对 CPU 和内存的影响,减少路由协议产生的流量,可以构筑分层的网络拓扑结构。完全支持无类别路由处理,消除了有类别路由协议的一些问题,例如不连续子网的问题。支持无类别路由表的检索,支持 VLSM,支持Supernetting 可以更有效的进行地址管理。支持无大小限制的,任意的 metric 值。等价负载均衡,可以更有效的利用多路径进行数据传输。使用预留的组播地址,减小对非 OSPF 设备的影响。支持认证,提供更安全的路由可以对路由进行标记,跟踪外部的路由。第一步:OSPF 路由器从启动了 OSPF 协议的接口向外发送 Hello 数据包,如果两台路由器共享公共的数据链路,并且 Hello
3、 数据包中指定的数据参数协商一致,这两个路由器将建立邻居关系成为邻居(Neighbors)。第二步:建立邻接(Adjacencies)关系。邻接关系是在两个建立了邻居关系的 OSPF 路由器之间建立的,类似于一条点到点的虚拟链路。两个 OSPF 路由器必须先建立邻居关系然后才能建立邻接关系。因此在故障排除时可以依次检查相应的数据库列表。OSPF 定义了几种网络类型和路由器类型,网络类型和路由器类型也在 Hello 数据包中传输。邻接关系的建立也需要依据网络类型和路由器类型来建立。第三步:所有的路由器向所有的建立了邻接关系的路由器上发送 LSA(LinkStateAdvertisement)数据
4、包。在 LSA数据包中,描述了路由器的接口、链路和链路的状态。这些链路可以是到 stub 网络的链路,可以是到其他 OSPF 路由器的链路,可以是到位于其他区域的网络的链路,或者是到外部网络的链路。由于网络中存在着多种类型的链路,因此也就存在着多种类型的链路状态信息,因此 OSPF 也就定义了多种的 LSA 类型。第四步:每个路由器从邻居路由器接收到后,将会在链路状态数据库中记录下 LSA 的内容,并且将 LSA 的一个拷贝发送给他的其他邻居路由器。第五步:通过在一个区域内扩散 LSA,所有的路由器将会建立统一的链路状态数据库。第六步:当链路状态数据库建立完成后,每个路由器使用 SPF 算法计
5、算出一个无环路的图表,这个图表可以用来描述从这个路由器到任意一个已知目的地的最短的路径也就是最小链路开销的路径。这个图表就是 SPF 树。第七步:每个路由器利用 SPF 树来建立自己的路由表。在一个区域内,当所有的链路状态信息已经被扩散到所有的路由器上以后,我们就可以说链路状态数据库已经被同步了。同时,路由表也已经建立了。Hello 数据包在邻居路由器之间进行交换,提供存活(keepalive)数据包的作用。当一台 OSPF 路由器出现问题时,他的邻居路由器可以通过 Hello 数据包的交换情况来获知情况。LSA 数据包每30 分钟会被重新传递一次。发送 LSA 数据包之前,OSPF 路由器必
6、须能够发现邻居路由器并且与邻居路由器建立邻接关系。邻居路由器信息会被建立在邻居列表中,同时还记录每个邻居路由器位于的链路或接口信息,以及记录其他维护邻居关系所需的必要信息。针对 OSPF 路由器,我们需要一个标记来唯一的标识一个路由器,这个标记就是 RouterID。RouterID 就是路由器上的一个 IP 地址。Cisco 路由器通过以下的原则来自行确定路由器的 RouterID:路由器选择数值最大的 Loopback 接口的 IP 地址作为RouterID。如果路由器上没有配置 Loopback 接口,路由器就选择配置在物理接口上的数值最大的 IP 地址作为 RouterID。这个接口可
7、以不运行 OSPF 路由协议。使用与 Loopback 接口的 IP 地址具有以下的好处:Loopback 接口比物理接口更稳定,当路由器启动后Loopback 接口就被启动,只有路由器失败了,Loopback 接口才会失败。使用 Loopback 接口的 ip 地址作为路由器的RouterID,可以使网络管理员在给 OSPF 路由器分配一个可预测的或是可确认的 RouterID 方面,具有更大的自由度。如果 CiscoOSPF 路由器使用一个物理接口的 IP 地址作为路由器的 RouterID,那么,即使这个物理接口后来失效了或是被删除了,OSPF 路由协议仍然会使用这个物理接口的 IP 地
8、址作为 RouterID 来使用。因此,Loopback 接口的ip 地址作为 RouterID 所带来的稳定性只是一个附属的优点,使用 Loopback 接口地址的最大好处是可以控制 RouterID。OSPF 路由器通过在 Hello 数据包中广播自己的RouterID,来启动邻居关系的建立。Hello 协议Hello 协议主要是为了实现以下的目的:Hello 协议是 OSPF 路由协议用来发现邻居路由器的手段和方法。Hello 数据包重保护了一些参数,两台路由器如果要形成邻居关系,这些参数必须能够协商成功。在具有邻居关系的路由器之间传输 Hello 数据包,可以起到传递 Keepaliv
9、es 信号的作用。通过 Hello 数据包的交换,可以用来确认邻居之间双向通讯的情况是否正常没有故障。在广播网络和非广播多点访问网络中,利用 Hello 数据包进行 DesignatedRouter 和 BackupDesignatedRouter的选举操作。OSPF 路由器从启动了 OSPF 协议的接口上周期性的发送Hello 数据包,这个时钟周期称为“HelloInterval” 。“HelloInterval”是基于接口进行配置的,两个接口的“HelloInterval”参数可以不同。Cisco 路由器缺省的 HelloInterval 值被设置为 10 秒,可以通过执行 ipospfh
10、ello-interval 命令来修改这个缺省的参数值。如果一个路由器在一段时间内没有从它的一个邻居路由器处接收到 Hello 数据包,它就会认为这个邻居路由器已经失效。这个时间段称为RouterDeadInterval。Cisco 路由器缺省的RouterDeadInterval 值被设置为 HelloInterval 值的四倍,也就是缺省值为 40 秒。这个值也可以通过执行ipospfdead-interval 命令来改变。OSPF 路由协议的 Hello 数据包包含以下信息:生成这个 Hello 数据包的 OSPF 路由器的 RouterID;生成并发送出这个 Hello 数据包的 OS
11、PF 路由器的接口的 AreaID、地址掩码、认证类型、认证信息、HelloInterval、RouterDeadInterval;DR 和 BDR五个标识重要功能的标志位生成这个 Hello 数据包的 OSPF 路由器的所有邻居的RouterID。这个 RouterID 的列表中只包括从发出这个Hello 数据包的路由器接口在 RouterDeadInterval 时钟到时之前通过 Hello 数据包中监听到的邻居的 RouterID。这一步是邻居路由器建立邻接关系的手段。路由器在接收到从一个邻居路由器发送过来的 Hello数据包后,会查看 Hello 数据包中承载的一部分信息,包括:Are
12、aID、认证的相关信息、网络掩码、HelloInterval、RouterDeadInterval 和选项值。并且会将这些信息与配置在接收到这个 Hello 数据包的接口上的参数进行比较,如果两者不一致,就会将接收到的 Hello 数据包丢弃,邻接关系也就不会被建立。如果两者一致,那么这个 Hello 数据包就是有效的。同时,如果发送这个Hello 数据包的邻居路由器的 RouterID 也已经在这个邻居列表中,并且邻居列表中记录的接口和接收这个 Hello 数据包的接口相同,那么这个接口的 RouterDeadInterval 时钟就会被重置,如果邻居列表中没有这个邻居路由器的RouterI
13、D,就会增加这个邻居路由器的 RouterID 记录。无论何时,路由器在发送 Hello 数据包时都会将传输这个 Hello 数据包的链路上的所有的邻居路由器的RouterID 的信息包含在这个 Hello 数据包里。如果一个邻居路由器接收到这个 Hello 数据包后发现自己的 RouterID信息也包含在这个 Hello 数据包中,那么这个路由器就可以确定一条双向通信链路已经被建立了。一旦双向通信被建立,邻接关系也就可以被建立了。当然并不是所有的邻居路由器之间都可以形成邻接关系。邻居路由器之间是否能够形成邻接关系,也要根据连接这两个邻居路由器的网络的类型来确定。网络类型也会影响 OSPF 数
14、据包的传输方式。OSPF 定义了五种网络类型,分别是:1、点到点网络(Point-to-pointnetworks)2、广播网络(Broadcastnetworks)3、非广播多点访问网络(Non-broadcastMulti-accessnetworksNBMA)4、点到多点网络(Point-to-multipointnetworks)5、虚拟链路(Virtuallinks)点到点网络连接一对路由器。在点到点网络上,有效的 OSPF 邻居路由器之间总会形成邻接关系。在点到点网络上,OSPF 数据包的目的地址始终是。这个地址称为AllSPFRouters,是一个预留的 D 类 IP 地址。广播
15、网络是一个多点访问的网络,在广播网络中可以连接两台以上的设备。并且在这个网络上可以传输广播数据包。一个广播数据包被发送到这个网络后,所有设备都可以接收到。连接到广播网络上的 OSPF 路由器会推选出一个路由器作为 DR 和一个路由器作为 BDR。由 DR 和 BDR 以组播方式发送目的地址为的 Hello 数据包到广播网络上,承载这个数据包的帧的目的 MAC 地址为。广播网络上的其它OSPF 路由器会以组播方式发送链路状态更新(LSU:LinkStateUpdate)和链路状态回执(LSA:LinkStateAcknowledgment)数据包,组播数据包的目的 IP 地址是,这个地址称为 A
16、llDRouter。承载这个组播数据包的帧的目的 MAC 地址是。非广播多点访问网络可以连接两个以上的路由器,但是不支持广播功能。一个数据包发送出去后,不能够被所有的路由器接收到。因此需要对非广播多点访问网络上的路由器进行额外的配置,以便他们能够发现邻居路由器。连接到 NBMA 网络上的 OSPF 路由器也会推举 DR 和 BDR,但是 OSPF 数据包是以单播数据包的形式发送的。1.经典场景面试问题2.经典 50 题综合素质面试问题3.最新英语面试问题及答案大全年面试问题大全及答案5.技术人员成功面试技巧6.总裁面试问题7.升职面试技巧和注意事项8.电视台面试技巧和注意事项9.解决招聘面试过程中存在问题的对策10.播音主持培训经典面试问题回答思路