在讨论此项技术之前得有一些准备知识:帧中继,ospf等等。首先说说帧中继:帧中继(frame-ralay)是一种广域网技术,属于分组交换门里的一种;frame-relay是一种二层技术,与具体的物理链路无关。再说说ospf:ospf是一种动态路由协议,用以生成路由表,是众多的路由协议中较为优秀的一种,一般用再大中型企业。路由表是路由器转发数据所依赖的一张表。因此可以说没有路由协议就没有路由表,路由器就不能完成转发数据的重任。在学习此篇之前最好是先具体的了解一下帧中继和ospf.这里只是简单的介绍了下,因为我这次讨论的重点是:OSPF如何在帧中继网络环境中应用的更好。
    学过路由的人都知道,在路由网络中,路由器( 这里指的是广义上的路由器)转发数据要依赖一张表——路由表。而路由表的形成要么靠手工一条一条的配置(即静态路由),要么靠动态路由协议来自动生成。而ospf就是属于这种动态的路由协议的一种。学过ospf的应该知道,oppf要生成路由表要经过几个过程,书上的咱就不谈(三个阶段),为了通俗,便于理解,我就以自己的理解来说说:邻居——邻接——通告路由——计算路由表——路由表形成,这几个过程。这里我们只是关心路由表能否生成并没有关心其他很多的因素,以后会逐步涉及到。
     我们已经知道了ospf要生成路由表的几个过程,要说的是每个过程是紧密联系的只要其中的一个环节出了问题路由表是无法形成的。这就更加具体了我写这篇文章的目标了。今天的问题就要就是围绕“邻接”如何形成而展开的。从上面说的可要看出“邻接”是在形成“邻居”之后,才能形成。因此讨论是在能形成邻居的前提下进行的。
     那么,邻接怎么形成呢?这就要看“OSPF网络的类型”是什么了。这里的网络类型仅仅只是ospf技术里的术语。ospf网络有:“点到点(p-p)”和"多路访问(ma)"两种。ma又有“广播型”和“非广播型(NBMA)”两种。对于'P-P'只要能形成邻居就会自动形成邻接,在这里可以说:邻居=邻接。而在MA网络环境中,在形成邻居后,必须要在所有的邻居中选出一个DR(指定路由器)和一个BDR(备份指定路由器),然后所有其他设备只能和DR和BDR形成邻接关系。链路状态数据只能在邻接关系的路由器之间传输,普通的邻居之间是不能传输链路状态数据(LSA)的。
     那么帧中继又是如何形成邻接的呢?先看看帧中继的ospf网络类型。帧中继在实施是有两种方案:NBMA和点到点子接口。其中NBMA是所有的广域网链路都在同一个IP网段里;点到点子接口是每一条链路都在一个独立的IP网段里。因此帧中继真的是个不简单的技术,ospf的两种网络类型它都有。
     终于说到了正题。下面讨论如何具体的在帧中继中应用ospf!
     首先是NBMA模式的帧中继。大家有条件的可以先做个实验。先做好帧中继的基本配置,再做好ospf的进本配置。再查看路由器的路由表,大家会发现路由器中根本就没有关于ospf的路由。这是为什么呢?到底是哪个环节出了问题?可以查看下邻居表,这时邻居表没有一个条目,也就是说,连邻居都不是,怎么会形成邻接的关系呢,路由表没有也就是理所当然的 。也就是说问题出在了形成邻居这一环节。找到了问题,如何解决呢?首先想象邻居为什么不能形成:邻居是通过互相发送HELLO包形成的,HELLO是组播发送的,而NBMA下的帧中继虽然支持组播,但对ospf来说ospf是不知道的,它认为是不能广播的。因此底层的封装是不能解决的所以HELLO出不去,邻居自然形成不了。有2种方法可以解决形成邻居的问题:1.在接口下申明可以广播。2.在接口下配置单播更新,让HELLO包通过单播方式传输。好了,以上的2种方法都可以解决邻居的形成问题。那邻接应该也能形成了吧?对!确实可以形成邻接.可问题并没有那么简单,否则它就不叫帧中继了。做过实验的朋友会发现,运气好时,路由都有,完全没其他的问题。运气不好时会发现,总部只有其中一个分部的路由,而除了一个分部有关于总部的路由外,其他的都没有任何路由。这是为什么呢?这与DR有关,运气好时,总部是DR路由器,这是就没有什么大问题了,可大部分时候运气是不好的:DR在分部,当DR在分部时分部之间并没有PVC,因此连邻居都形成不了,其他分部的路由器又如何与DR形成邻接呢!也就是说这种情况下必须要总部形成DR才行,所以必须要控制总部选举为DR才算完成任务——路由形成。
    费了那么大功夫总算是解决了NBMA下帧中继运行ospf的问题。问题是解决了,但大家反过头来想一想,这样做有意义吗?选DR不就是为了减少LSA的通告量从而减轻设备的压力吗?大家看看这个环境中分部之间连PVC都没有,又怎么会形成邻居,怎么会通告LSA,怎么会造成设备的压力过大。既然没有这些问题,有何必多此一举而应用解决此问题的技术呢?因此,以上花费了那么大的力气才解决的问题对实际问题来说似乎是毫无意义的。事实上真的是这样,工程中根本不会用此方法。但,为了完善知识体系,还是拿出来说说。
         NBMA帧中继的第二种解决方法相对上面的方法更好,工程中如果是用帧中继且是NBMA模式一律都是用这种方式。这就是“点到多点”技术。在接口下将接口的ospf类型改成“点到多点”模式(ip oispf network point-to-multpoint).这时就会省掉那种多此一举的做法——否定选举DR,即形成邻居后变自动形成邻接。
    下面就是帧中继的“点到点子接口”模式。其实“点到点子接口”模式没什么大问题,做好帧中继的基本配置,做好ospf的基本配置。OK!搞定,因为此模式的ospf网络类型是“P-P”,所以不会选举DR,邻居形成即形成邻接。
     好了,帧中继下的OSPF问题已经解决了。说了那么多,其实发现那些复杂的东西都是一些没有必要的多此一举的东西,如果是做工程大可以不看,只少我不会给自己添麻烦,如果叫我做帧中继网络用OSPF协议,我肯定用点到点子接口模式帧中继,如果用NBMA模式那是自找麻烦。如果是学习技术还是可以看看的哦!