(完整版)OSPF路由理论知识总结,推荐文档
ospf全部知识点总结

ospf全部知识点总结一、OSPF的基本概念1.1 OSPF的发展历程OSPF是由IETF(Internet Engineering Task Force)定义的开放标准,最初在RFC 1131中提出,随后在RFC 1247和RFC 1245中进行了修订,成为了OSPFv2的标准。
OSPFv3则是OSPF在IPv6环境下的扩展,定义在RFC 5340中。
OSPF发展至今已经成为互联网上使用最广泛的动态路由协议之一。
1.2 OSPF的基本特点OSPF是一种链路状态路由协议,和距离矢量路由协议相比,它具有更快的收敛速度、更灵活的路由选择和更好的可扩展性。
OSPF使用SPF算法计算最短路径,能够支持VLSM 和CIDR的IP地址分配,并且提供了可靠的路由数据交换。
1.3 OSPF的组成部分OSPF由路由器、链路、网络和邻居关系组成。
路由器负责OSPF协议的计算和路由表的更新,链路是指连接路由器之间的物理或逻辑链路,网络是指可以发送OSPF Hello消息的链路,邻居关系是指路由器之间建立的可靠的邻居关系,用于交换路由信息。
1.4 OSPF的工作原理OSPF使用Hello消息来发现邻居,并且建立邻居关系。
建立邻居关系后,路由器之间会交换LSA(Link State Advertisement)来收集网络拓扑信息。
然后使用SPF算法计算最短路径,并且更新路由表。
最后,OSPF使用LSA更新来维护网络状态,并且保证网络的稳定性。
二、OSPF的工作原理2.1 OSPF消息格式OSPF消息有Hello消息、LSA消息和LSU(Link State Update)消息。
Hello消息用于邻居发现和建立邻居关系,LSA消息用于交换路由信息,LSU消息用于路由表的更新。
2.2 OSPF的邻居关系OSPF使用Hello消息来发现邻居,并且建立邻居关系。
当路由器接收到相邻路由器的Hello消息,并且满足了协议规定的条件,邻居关系就会建立成功。
OSPF路由理论知识总结

1OSPF概述1.1协议特点OSPF是基于链路状态的动态路由,自从该协议的出现,RIP协议基本就不在实际生产环境中使用了。
RIP协议主要存在以下几点问题:不适合大规模组网,超过15跳路由就会不可达。
更新路由是会发送全部的路由信息,相比之下会占用大量的带宽资源。
存在路由环路路由收敛慢OSPF协议特点:路由没有跳数限制路由收敛快SPF算法解决了路由环路更新变化的路由信息1.2OSPF协议基本原理OSPF协议的工作过程包含了寻找邻居、建立邻接关系、链路状态信息传递、计算路由OSPF的三张表1)邻居表:该表记录了建立邻居关系的路由器邻居信息,是通过组播方式发送Hello报文发现邻居(目的地址224.0.0.5)。
2)LSDB表:该表中记录了所有链路状态的信息,同一个区域内路由器的LSDB表是相同的,并且只维护该区域的LSDB表。
3)路由表:该表是存放最优先的路由信息。
OSPF协议路由的生成过程:生成LSA描述自己的接口状态通过区域内的LSDB信息通过SPF算法计算出路由2分层结构2.1OSPF区域为什么划分区域:减少区域内的LSDB信息,降低对路由器性能要求合理规划区域,统一管理隔离拓扑变化,减少路由震荡对整个自治系统的影响OSPF区域的两个规定:1)所有非骨干区域必须要和骨干区域互联2)骨干区域必须保持连通,不能分散在特殊情况下,非骨干区域没有和骨干区域互联时,可以通过虚链路的方式实现。
满足和骨干区域互联的要求。
2.2OSPF路由器类型下图是OSPF路由器类型举例:3Router ID和网络类型3.1Router ID路由器运行OSPF协议,必须要存在Router ID(RID)。
RID是一个32 bit无符号整数,在OSPF中标识一台路由器。
说白了就像人的身份证号码。
RID可以手工配置也可以自动生成。
没有手工配置RID的话,则会自动选择Loopback接口地址最大的地址作为RID,如果不存在Loopback接口地址,则会选择路由器上其他接口的IP地址中选择最大的作为RID。
ospf实验知识点总结

ospf实验知识点总结1. OSPF基本概念OSPF是一种开放式协议,它使用链路状态路由算法确定网络中的路径。
OSPF使用的是Dijkstra算法,它通过以链路为单位计算最短路径,然后构建路由表。
OSPF协议支持VLSM(Variable Length Subnet Mask)和CIDR(Classless Inter-Domain Routing)等技术,可以根据网络的实际需要进行划分,提高网络的利用率。
2. OSPF的邻居关系在OSPF中,路由器之间通过建立邻居关系来交换LSA信息。
OSPF邻居状态主要包括:Down、Init、2-Way、Exstart、Exchange和Full。
在邻居关系建立时,需要满足一定的条件,如OSPF邻居的IP地址必须在同一个网络中,两台路由器的Hello和Dead Interval必须一致等。
3. OSPF的路由计算过程OSPF协议使用Dijkstra算法计算最短路径,首先在链路状态数据库中收集链路状态信息,然后使用Dijkstra算法计算出最短路径。
在路由计算过程中,需要对收集到的链路状态信息进行处理,包括链路状态更新、链路状态同步等步骤。
4. OSPF的状态OSPF邻居状态主要包括:Down、Init、2-Way、Exstart、Exchange和Full。
在邻居状态的转换过程中,需要满足一定的条件,如Hello和Dead Interval的一致性、路由器的ID号等。
5. OSPF的优化在实际网络中,为了提高网络性能和减少路由器的负担,可以采用一些优化技术。
例如,可以利用区域的划分减少Link State Advertisement的传播范围,减轻网络的负担;可以使用Stub区域和Totally Stubby Area等技术减少LSA数量;可以使用路由汇总技术减少路由表的大小等。
6. OSPF的故障排除在部署和维护OSPF协议时,需要及时排除网络故障。
故障排除的步骤主要包括:检查OSPF邻居状态;检查网络的连通性;检查OSPF路由表;检查OSPF链路状态数据库;检查路由器的配置信息等。
OSPF基础知识总结

OSPF基础知识总结author :wakinliOSPF基础知识总结⼀、OSPF是链路状态路由选择协议:1.Link-state routers recognize more information about the network than their distance vector counterparts. 2.Each router has a full picture of the topology.OSPF在⼯作的时候每个路由器都拥有整个⽹络的拓朴图,并且同⼀区域内的路由器的拓朴图都是完全⼀样的。
3.Consequently, link-state routers tend to make more accurate decisions.⼆、链路状态路由选择协议的优点:1.为克服距离⽮量路由选择协议的缺点,开发了链路状态路由选择协议2.链路状态路由选择协议仅在⽹络拓扑发⽣变化时才⽣成路由选择更新.3.链路状态路由选择协议具有如下特征:快速响应⽹络变化在⽹络变化时发送触发更新以较低的频率发送定期更新,被称为链路状态刷新(LSU)三、OSPF规定有层次的⽹络结构,OSPF将⽹络分为若⼲区域:OSPF的两种区域类型:1.传输区域(⾻⼲区域)Transit area (backbone or area 0):主要功能为快速⾼效的传输IP分组的OSPF区域,中转区域将其它类型的OSPF区域连接起来2.常规区域(⾮⾻⼲区域)Regular areas (nonbackbone areas):主要功能是为连接⽤户和资源的OSPF区域3.⾻⼲区域的区域号必须为0。
所有的常规区域必须与⾻⼲区域相连。
层次化区域优点:便于管理。
1.最⼩化路由表。
2.将拓扑变更影响限制在区域内3.将LSA更新泛洪限制在范围内。
区域内的链路状态数据库在同⼀区域内的每个路由器上都相同。
OSPF cost = 10^8 / Bandwidth。
OSPF文档总结

OSPF路由协议一:OSPF的hello协议1.1 Hello协议的目的:用于发现邻居在成为邻居之前,必须对Hello包里的一些参数协商成功Hello包在邻居之间扮演着keepalive的角色允许邻居之间的双向通信它在NBMA(Nonbroadcast Multi-access)网络上选举DR和BDR详细说明:Cisco路由器上Hello包默认的发送间隔(HelloInterval)是10秒;NBMA网络是30秒, 通过ip ospf hello-interval <seconds>来修改;如果在4倍于这个时间间隔里(40秒和120秒)内仍然没有收到来自邻居的新的Hello包,这个邻居将被宣告为无效(dead)通过命令ips ospf dead-interval <seconds>来修改1.2 Hello Packet包含以下信息:1.源路由器的RID2.源路由器的Area ID3.源路由器接口的掩码4.源路由器接口的认证类型和认证信息5.源路由器接口的Hello包发送的时间间隔6.源路由器接口的无效时间间隔7.优先级8.DR/BDR9.五个标记位(flag bit)10.源路由器的所有邻居的RID二OSPF的网络类型OSPF定义的5种网络类型:1.点到点网络2.广播型网络3.NBMA网络4.点到多点网络5.虚链接(virtual link)注: 所有的网络也可以归纳成2种网络类型:1.传输网络(Transit Network)2.末梢网络(Stub Network )三:OSPF的DR及BDR3.1 DR BDR选取实在接口状态机的方式触发的。
路由器的每个多路访问(multi-access)接口都有个路由器优先级(Router Priority),8 位长的一个整数,范围是0 到255,Cisco 路由器默认的优先级是 1 优先级为0 的话将不能选举为DR/BDR.优先级可以通过命令ip ospf priority 进行修改选举规则主与次序:✓ROUTER ID IP✓环回接口(IP最大的)✓最大的活动物理接口IP地址(ip最大的)3.2DR BDR 选取过程:1. 在和邻居建立双向(2-Way)通信之后,检查邻居的Hello包中Priority,DR和BDR字段,列出所有可以参与DR/BDR选举的邻居.所有的路由器声明它们自己就是DR/BDR(Hello包中DR字段的值就是它们自己的接口地址;BDR字段的值就是它们自己的接口地址)2. 从这个有参与选举DR/BDR权的列表中,创建一组没有声明自己就是DR的路由器的子集(声明自己是DR的路由器将不会被选举为BDR)3. 如果在这个子集里,不管有没有宣称自己就是BDR,只要在Hello包中BDR字段就等于自己接口的地址,优先级最高的就被选举为BDR;如果优先级都一样,RID最高的选举为BDR4. 如果在Hello包中DR字段就等于自己接口的地址,优先级最高的就被选举为DR;如果优先级都一样,RID最高的选举为DR;如果没有路由器宣称自己就是DR,那么新选举的BDR就成为DR5. 要注意的是,当网络中已经选举了DR/BDR后,又出现了1台新的优先级更高的路由器,DR/BDR是不会重新选举的6. DR/BDR选举完成后,DRother只和DR/BDR形成邻接关系.所有的路由器将组播Hello包到AllSPFRouters地址224.0.0.5以便它们能跟踪其他邻居的信息,即DR将洪泛update packet到224.0.0.5;DRother只组播update packet到AllDRouter地址224.0.0.6,只有DR/BDR监听这详细说明如下:OSPF 路由器在完全邻接之前,所经过的几个状态:1.Down:初始化状态2.Attempt:只适于NBMA 网络,在NBMA 网络中邻居是手动指定的,在该状态下,路由器将使用HelloInterval取代PollInterval 来发送Hello包3.Init:表明在DeadInterval里收到了Hello包,但是2-Way通信仍然没有建立起来4.two-way:双向会话建立(标准在对方发来的包中见到了自己的ID)5.ExStart: 信息交换初始状态,在这个状态下,本地路由器和邻居将建立Master/Slave关系,并确定DDSequence Number,接口等级高的的成为Master6.Exchange: 信息交换状态,本地路由器向邻居发送数据库描述包,并且会发送LSR用于请求新的LSA7.Loading:信息加载状态,本地路由器向邻居发送LSR用于请求新的LSA8.Full:完全邻接状态,这种邻接出现在Router LSA 和Network LSA中详细过程如下:Router#debug ip ospf adjOSPF adjacency events debugging is onRouter#*Mar 1 00:03:09.155: OSPF: end of Wait on interface FastEthernet1/0*Mar 1 00:03:09.155: OSPF: DR/BDR election on FastEthernet1/0*Mar 1 00:03:09.155: OSPF: Elect BDR 1.1.1.1*Mar 1 00:03:09.155: OSPF: Elect DR 1.1.1.1*Mar 1 00:03:09.155: OSPF: Elect BDR 0.0.0.0*Mar 1 00:03:09.159: OSPF: Elect DR 1.1.1.1*Mar 1 00:03:09.159: DR: 1.1.1.1 (Id) BDR: none*Mar 1 00:03:09.659: OSPF: No full nbrs to build Net Lsa for interface FastEthernet1/0*Mar 1 00:04:09.539: OSPF: 2 Way Communication to 192.168.7.1 on FastEthernet0/0, state 2WAY*Mar 1 00:04:09.543: OSPF: Neighbor change Event on interface FastEthernet0/0 *Mar 1 00:04:09.543: OSPF: DR/BDR election on FastEthernet0/0*Mar 1 00:04:09.543: OSPF: Elect BDR 192.168.7.1*Mar 1 00:04:09.543: OSPF: Elect DR 1.1.1.1*Mar 1 00:04:09.543: DR: 1.1.1.1 (Id) BDR: 192.168.7.1 (Id)*Mar 1 00:04:09.547: OSPF: Send DBD to 192.168.7.1 on FastEthernet0/0 seq 0x23B2 opt 0x52 flag 0x7 len 32*Mar 1 00:04:09.547: OSPF: Neighbor change Event on interface FastEthernet0/0 *Mar 1 00:04:09.551: OSPF: DR/BDR election on FastEthernet0/0*Mar 1 00:04:09.551: OSPF: Elect BDR 192.168.7.1*Mar 1 00:04:09.551: OSPF: Elect DR 1.1.1.1*Mar 1 00:04:09.551: DR: 1.1.1.1 (Id) BDR: 192.168.7.1 (Id)*Mar 1 00:04:09.551: OSPF: Neighbor change Event on interface FastEthernet0/0 *Mar 1 00:04:09.555: OSPF: DR/BDR election on FastEthernet0/0*Mar 1 00:04:09.555: OSPF: Elect BDR 192.168.7.1*Mar 1 00:04:09.555: OSPF: Elect DR 1.1.1.1*Mar 1 00:04:09.555: DR: 1.1.1.1 (Id) BDR: 192.168.7.1 (Id)*Mar 1 00:04:09.559: OSPF: Rcv DBD from 192.168.7.1 on FastEthernet0/0 seq 0x1E22 opt 0x52 flag 0x7 len 32 mtu 1500 state EXSTART*Mar 1 00:04:09.559: OSPF: NBR Negotiation Done. We are the SLA VE*Mar 1 00:04:09.559: OSPF: Send DBD to 192.168.7.1 on FastEthernet0/0 seq 0x1E22 opt 0x52 flag 0x2 len 52*Mar 1 00:04:09.639: OSPF: Rcv DBD from 192.168.7.1 on FastEthernet0/0 seq0x1E23 opt 0x52 flag 0x3 len 52 mtu 1500 state EXCHANGE*Mar 1 00:04:09.639: OSPF: Send DBD to 192.168.7.1 on FastEthernet0/0 seq 0x1E23 opt 0x52 flag 0x0 len 32*Mar 1 00:04:09.807: OSPF: Rcv DBD from 192.168.7.1 on FastEthernet0/0 seq 0x1E24 opt 0x52 flag 0x1 len 32 mtu 1500 state EXCHANGE*Mar 1 00:04:09.807: OSPF: Exchange Done with 192.168.7.1 on FastEthernet0/0 *Mar 1 00:04:09.807: OSPF: Send LS REQ to 192.168.7.1 length 12 LSA count 1 *Mar 1 00:04:09.807: OSPF: Send DBD to 192.168.7.1 on FastEthernet0/0 seq 0x1E24 opt 0x52 flag 0x0 len 32*Mar 1 00:04:09.811: OSPF: Rcv LS REQ from 192.168.7.1 on FastEthernet0/0 length 36 LSA count 1*Mar 1 00:04:09.815: OSPF: Send UPD to 192.168.1.2 on FastEthernet0/0 length 64LSA count 1*Mar 1 00:04:09.815: OSPF: Rcv LS UPD from 192.168.7.1 on FastEthernet0/0 length 64 LSA count 1*Mar 1 00:04:09.815: OSPF: Synchronized with 192.168.7.1 on FastEthernet0/0, st ate FULL*Mar 1 00:04:09.819: %OSPF-5-ADJCHG: Process 1, Nbr 192.168.7.1 on FastEthernet0/0 from LOADING to FULL, Loading Done*Mar 1 00:04:09.931: OSPF: Rcv LS UPD from 192.168.7.1 on FastEthernet0/0 length 64 LSA count 1\*Mar 1 00:04:10.047: OSPF: Build router LSA for area 0, router ID 1.1.1.1, seq0x80000004*Mar 1 00:04:10.319: OSPF: Build network LSA for FastEthernet0/0, router ID 1.1 .1.1*Mar 1 00:04:10.319: OSPF: Build network LSA for FastEthernet0/0, router ID 1.1 .1.*Mar 1 00:04:15.347: OSPF: Rcv LS UPD from 192.168.7.1 on FastEthernet0/0 length 76 LSA count 1四: OSPF区域4.1 路由器类型1. Internal Router:内部路由器2. ABR(Area Border Router):区域边界路由器3. Backbone Router(BR):骨干路由器4. ASBR(Autonomous System Boundary Router):自治系统边界路由器4.2 Stub 区域限制a) 所有位于stub area的路由器必须保持LSDB信息同步, 并且它们会在它的Hello包中设置一个值为0的E位(E-bit),因此这些路由器是不会接收E位为1的Hello包,也就是说在stub area 里没有配置成stub router的路由器将不能和其他配置成stub router 的路由器建立邻接关系b) 不能在stub area中配置虚链接(virtual link),并且虚链接不能穿越stub areac) stub area里的路由器不可以是ASBRd) stub area 可以有多个ABR,但是由于默认路由的缘故,内部路由器无法判定哪个ABR才是到达ASBR的最佳选择4.3 虚链接是一个逻辑的隧道(Tunnel),配置虚链接的一些规则:1.虚链接必须配置在2 个ABR 之间2. 虚链接所经过的区域叫Transit Area,它必须拥有完整的路由信息3. Transit Area不能是Stub Area4. 尽口的避免使用虚链接,它增加了网络的复杂程度和加大了排错的难度详细说明:Stub过滤Type5LSA 并自动产生默认路由O*IA 但不过滤掉域间路由Stub-No Summary只放入Type 2&6类的路由,即域间路由被过滤掉,同时产生O *IA的默认路由NSSAASBR使用Type 7LSA 通告外部路由,路由条目由O E2改为O N2,NSSA 不会自动产生默认路由,除非加入area 2 nssa default-information-originate.且默认路由仅用在ASBR,ABR 上,产生一条O *N2的路由。
OSPF知识点总结(华为)

OSPF 采用层次设计,用 Area 来分隔路由器(通常一个区域的路由器不超过 50 台) 区域中的路由器保存该区域中所有链路和路由器的详细信息 但只保存其他区域路由器和链路的摘要信息
单区域的问题:
区域内部动荡会引起全网路由器的 SPF 计算; LSDB 庞大,资源消耗过多,设备性能下降,影响数据转发; 每台路由器都需要维护的路由表越来越大,单区域内路由无法汇总。
Router-ID
Router-ID 用于在 OSPF 区域中唯一地表示一台 OSPF 路由器,全 OSPF 域内禁止出现两 台路由器拥有相同的 Router-ID。
Router-ID 的设定可以通过手工配置,也可通过协议自动选取。实际网络部署中考虑到 协议的稳定,建议手工配置。
在路由器运行了 OSPF 并由系统自动选定 Router-ID 之后,如果该 Router-ID 对应的接 口 down 掉,或出现一个更大的 IP,OSPF 仍然保持原 Router-ID(即 Router-ID 值是非 抢占的,稳定第一),即使此时 reset ospf process 重启 OSPF 进程,Router-ID 也不会发 生改变;除非重新手工配置 Router-ID(OSPF 进程下手工敲 router-id xxx),并且重启 OSPF 进程方可。另外,如果该 Router-ID 对应的接口 IP 地址消失,例如 undo ip address, 则 reset ospf process 后,RouterID 也会发生改变。
3. DRothers:除 DR 与 BDR 之外的其他路由器。
DR 选举规则:
DR 和 BDR 是由同一网段中所有的路由器根据路由器优先级、Router ID 通过 Hello 报文 选举出来的,只有优先级大于 0 的路由器才具有选取资格,优先级为 0 不参与选举。
ospf知识要点归纳

Ospf协议ospf中的四种类型的路由器内部路由器(不含区域0的路由器):定义接口属于同一区,但这个区不是0区区域边界路由器:具有多个接口的路由器可以属于两个或多个区骨干路由器:至少有一个接口定义为属于区0的路由器。
一个区边界路由器也可能是一个骨干路由器,任何一个与区0互联的区边界路由器也将成为骨干路由器。
◆自治系统边界路由器:ASBR位于OSPF自治系统和非OSPF网络之间(比如rip)设计ospf网络的两种初衷:提高网络的可扩展性、网络拓扑快速收敛◆OSPF使用LSA在OSPF节点之中共享路由信息。
这些广播信息会在整个区中进行传播但不会超越一个区,所以,区中的每一个路由器都知道本区的拓扑。
然而,一个区的拓扑对区外是不可知的→区内路由器彼此交换LSA来了解本区域的拓扑图,包括区边界路由器◆OSPF网络收敛速度快的原因:OSPF路由器是能够直接寻址并发送LSA(泛洪)到整个区域中,它和RIP的“邻居至邻居”是完全不同的→收敛不必在自治系统中的所有路由器上经行,而只发生在受影响的区域中。
这个特点既加速了收敛又增加了网络的稳定性,因为只有自治系统中的一个子网经历不稳定性,这种不稳定性是收敛过程自身带来的。
◆区域边界路由器维护着它进入ospf进程的接口所连接的区域的路由信息,区域边界路由器必须与它加入ospf进程接口所连接的区域对等体交换LSA的。
◆OSPF加强性能的另一个特性就是汇总路由,关于一个区的拓扑信息,并不和区外的路由器共享,区域边界路由器汇总了其加入ospf进程的接口所连接区域的汇总路由,区域边界路由器必须与它加入ospf进程接口所连接的区域对等体交换LSA.◆骨干路由器负责维护骨干拓扑信息,并且为自治系统中的每个其他区传播汇总路由信息ospf用于建立和维护邻居关系的一个协议是hello协议。
显示ospf的调试信息debug ip ospf eventdebug ip ospf lsadebug ip ospf packetdebup ip ospf spf显示ospf的运行状态show ip ospf routeshow ip ospf errorshow ip ospf interfaceshow ip ospf neighbor路由器建立邻居的5中过程Init →exstart →exchange→loading→full5个报文HELLO 报文,发现及维持邻居关系,选举DR,BDR.DB报文,描述本地LSDB(连接状态数据库)的情况。
(完整word)OSPF协议详解(最终版)

OSPF协议总结(完整版)OSPF的五个包:1. Hello: 9项内容,4个必要2. DBD:数据库描述数据包(主要描述始发路由器数据库中的一些或者全部LSA 信息),主要包括接口的MTU,主从位MS,数据库描述序列号等);3. LSR:链路状态请求数据包(查看收到的LSA是否在自己的数据库,或是更新的LSA,如果是将向邻居发送请求);4. LSU :链路状态更新数据包(用于LSA的泛洪扩散和发送LSA去响应链路状态请求数据包);5. LSACK :链路状态确认数据包(用来进行LSA可靠的泛洪扩散,即对可靠包的确认)。
Hello包作用:1 .发现邻居;2. 建立邻居关系;3. 维持邻居关系;4. 选举DR,BDR5. 确保双向通信。
Hello包所包含的内容:注:1.“ * ”部分全部匹配才能建立邻居关系。
2. 邻居关系为FULL状态;而邻接关系是处于TWO-WAY状态。
Hello时间间隔:在点对点网络与广播网络中为10秒;在NBMA网络与点对多点网络中为30秒。
注:保持时间为hello时间4倍虚电路传送的LSA为DNA,时间抑制,永不老化.OSPF的组播地址:DR将使用组播地址224.0.0.5泛洪扩散更新的数据包到DRothersDRothers使用组播地址224.0.0.6发送更新数据包组播的MAC 地址分别为:0100.5E00.0005 0100.5E00.0006OSPF的包头格式:| 版本| 类型| 长度| 路由器ID | 区域ID | 验证和| 验证类型| 验证| 数据|| 1 byte | 1 | 2 | 4 | 4 | 2 | 2 | 8 | variance |OSPF 支持的验证类型:OSPF 支持明文和md5 认证,用Sniffer 抓包看到明文验证的代码是“ 1”,md5 验证的代码是“ 2”。
OSPF 支持的网络类型:1.广播2.非广播3.点对点(若MTU 不匹配将停留在EX-START 状态)4.点对多点5.虚电路(虚电路的网络类型是点对点)虚链路必须配置在ABR上,虚链路的配置使用的命令是area transit-area-id virtual-link router-id 虚链路的Metric 等同于所经过的全部链路开销之和DR /BDR 选举:1.优先级(0~255; 0 代表不参加选举;默认为1);2.比较Router-id。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1OSPF概述1.1协议特点OSPF是基于链路状态的动态路由,自从该协议的出现,RIP协议基本就不在实际生产环境中使用了。
RIP协议主要存在以下几点问题:不适合大规模组网,超过15跳路由就会不可达。
更新路由是会发送全部的路由信息,相比之下会占用大量的带宽资源。
存在路由环路路由收敛慢OSPF协议特点:路由没有跳数限制路由收敛快SPF算法解决了路由环路更新变化的路由信息1.2OSPF协议基本原理OSPF协议的工作过程包含了寻找邻居、建立邻接关系、链路状态信息传递、计算路由OSPF的三张表1)邻居表:该表记录了建立邻居关系的路由器邻居信息,是通过组播方式发送Hello报文发现邻居(目的地址224.0.0.5)。
2)LSDB表:该表中记录了所有链路状态的信息,同一个区域内路由器的LSDB表是相同的,并且只维护该区域的LSDB表。
3)路由表:该表是存放最优先的路由信息。
OSPF协议路由的生成过程:生成LSA描述自己的接口状态通过区域内的LSDB信息通过SPF算法计算出路由2分层结构2.1OSPF区域为什么划分区域:减少区域内的LSDB信息,降低对路由器性能要求合理规划区域,统一管理隔离拓扑变化,减少路由震荡对整个自治系统的影响OSPF区域的两个规定:1)所有非骨干区域必须要和骨干区域互联2)骨干区域必须保持连通,不能分散在特殊情况下,非骨干区域没有和骨干区域互联时,可以通过虚链路的方式实现。
满足和骨干区域互联的要求。
普通区域缺省情况下,OSPF区域被定义为普通区域。
普通区域包括:骨干区域自身必须保持连通。
标准区域:最通用的区域,它传输区域内路由,区域间路由和外部路由。
骨干区域:连接所有其他OSPF区域的中央区域,用Area 0表示。
骨干区域负责区域之间的路由,非骨干区域之间的路由信息必须通过骨干区域来转发。
所有非骨干区域必须与骨干区域保持连通。
Stub区域Stub区域是一些特定的区域,Stub区域的ABR不传播它们接收到的自治系统外部路由,因此这些区域中路由器的路由表规模以及路由信息传递的数量都会大大减少。
Stub区域是一种可选的配置属性,但并不是每个区域都符合配置的条件。
一般情况下,Stub区域位于自治系统的边界,是只有一个ABR的非骨干区域,为保证到自治系统外的路由依旧可达,Stub区域的ABR将生成一条缺省路由,并发布给Stub区域中的其他非ABR路由器。
Totally Stub区域允许ABR发布Type3缺省路由,不允许发布自治系统外部路由和区域间的路由,只允许发布区域内路由。
骨干区域不能配置成Stub区域。
如果要将一个区域配置成Stub区域,则该区域中的所有路由器都要配置Stub区域属性。
Stub区域内不能存在ASBR,因此自治系统外部的路由不能在本区域内传播。
虚连接不能穿过Stub区域。
NSSA(Not NSSA是Stub区域的一个变形,它和骨干区域不能配置成NSSA-So-Stubby Area)区域Stub区域有许多相似的地方。
NSSA区域不允许存在Type5 LSA。
NSSA区域允许引入自治系统外部路由,携带这些外部路由信息的Type7 LSA由NSSA的ASBR产生,仅在本NSSA内传播。
当Type7LSA到达NSSA的ABR时,由ABR将Type7 LSA转换成Type5 LSA,泛洪到整个OSPF域中。
Totally NSSA区域不允许发布自治系统外部路由和区域间的路由,只允许发布区域内路由。
区域。
如果要将一个区域配置成NSSA区域,则该区域中的所有路由器都要配置NSSA区域属性。
NSSA区域的ABR会发布Type7 LSA缺省路由传播到本区域内。
所有域间路由都必须通过ABR才能发布。
虚连接不能穿过NSSA区域。
2.2OSPF路由器类型区域内路由器(Internal Router)该类型路由器接口都属于一个OSPF区域。
区域边界路由器(ABR,Area Border Router)该类设备可以同时属于两个以上的区域,但其中一个必须是骨干区域。
ABR用来连接骨干区域和非骨干区域。
骨干路由器(Backbone Router)该类设备至少有一个接口属于骨干区域。
所有的ABR和位于Area0的内部设备都是骨干路由器自治系统边界路由器(ASBR ,Autonomous System Border Router )与其他AS 交换路由信息的设备称为ASBR 。
ASBR 并不一定位于AS 的边界,它可能是区域内设备,也可能是ABR 。
只要一台OSPF 设备引入了外部路由的信息,它就成为ASBR 。
下图是OSPF 路由器类型举例:3Router ID 和网络类型3.1Router ID路由器运行OSPF 协议,必须要存在Router ID (RID )。
RID 是一个32 bit 无符号整数,在OSPF中标识一台路由器。
说白了就像人的身份证号码。
RID可以手工配置也可以自动生成。
没有手工配置RID的话,则会自动选择Loopback接口地址最大的地址作为RID,如果不存在Loopback接口地址,则会选择路由器上其他接口的IP地址中选择最大的作为RID。
Router ID选择示例如下图:RID一旦自动生成就不会因为路由器上的IP地址改变而改变,重启OSPF进程后才会重新选择RID。
3.2网络类型OSPF有以下四种网络类型,网络类型一般都是根据链路层协议会默认选择,除了P2MP 外。
也可以更具自己需要手动制定网络类型。
1)Broadcast(广播):链路层协议是Ethernet、FDDI的话,默认就是该网络类型,该网络类型中通常是通过组播形式发送报文的。
2)NBMA(非广播多点可达网络):链路层协议是帧中继、ATM或X.25的话,默认就是该网络类型,是通过单播形式发送协议报文的。
3)P2MP(点到多点):没有链路层协议默认是该类型的,需要手工指定,通过组播形式发送报文的的。
4)P2P(点到点):链路层协议是PPP或HDLC时,默认就是该网络类型,通过组播形式发送协议报文。
3.3OSPF报文OSPF总共有以下5中报文Hello建立和维护邻居关系Database Description (DD)数据库内容的同步Link State Request(LSR,链路状态请求)请求链路状态信息(LSA)Link State Update(LSU,链路状态更新)向对方发送需要的LSA信息Link State Acknowledge(LsACK,链路对收到的LSA确定状态确定)4邻居建立和状态迁移4.1邻居发现和维护OSPF中两台路由器邻居发现过程:1)两台路由器通过组播的方式发送Hello报文。
2)路由器根据Hello报文中收到的参数进行协商,参数一致则两者都认为发现邻居。
维护邻居关系过程:1)邻居之间通过周期性发送Hello报文,来判断对方是否正常工作,只要在一定时间间隔内收到报文则判断对方正常工作,邻居关系则持续保持。
2)在一定时间间隔内收不到Hello报文,就认为对方不存在,则从邻居表中删除该邻居信息。
4.2OSPF定时器Hello定时器:该定时器是邻居之间发送Hello报文的时间间隔,邻居之间的Hello定时器要保持一致,不然会造成邻居建立失败。
该值得大小决定了路由收敛速度、网络负荷大小。
该值越小路由收敛越快,但是对路由器的负荷也大。
邻居失效时间:在失效时间内,接口没有收到邻居发来的Hello报文,则会判定邻居失效。
4.3DR/BDR选举在网络类型为广播和NBMA网络中才会选举DR和BDR,应为在这两种来那个网络中邻接复杂,需要通过选举DR,通过DR来更新路由信息,减少带宽浪费,BDR做为DR的备份。
选举原则:1)首先选择Hello报文中优先级高的2)优先级一致的话,选择Router ID大的3)一旦选择完毕后,有一台更高优先级的路由器加入也不会替换掉4.4邻接关系和邻居关系在OSPF中邻居和邻接的概念不同。
邻居只是两台路由器成功的建立连接,不一定真正的交换LSA信息,举个例子,两个路由器一个网络类型为广播,一个是点对点,你会发现邻居能够给建立成功,但是LSA传送不过来。
只有能够成功传输LSA才能确定为邻接。
4.5OSPF邻居状态机OSPF共有8中邻居状态其中DOWN、2-way和Full三种状态是未定状态,其他状态都是瞬间的。
1)Down:邻居会话的初始阶段。
表明没有在邻居失效时间间隔内收到来自邻居设备的Hello报文。
除了NBMA网络OSPF路由器会每隔PollInterval时间对外轮询发送Hello报文,包括向处于Down状态的邻居路由器(即失效的邻居路由器)发送之外,其他网络是不会向失效的邻居路由器发送Hello报文的。
2)Attempt:这种状态适用于NBMA网络,邻居路由器是手工配置的。
邻居关系处于本状态时,路由器会每隔HelloInterval时间向自己手工配置的邻居发送Hello报文,尝试建立邻居关系。
3)Init:本状态表示已经收到了邻居的Hello报文,但是对端并没有收到本端发送的Hello报文,收到的Hello报文的邻居列表并没有包含本端的Router ID,双向通信仍然没有建立。
4)2-Way:互为邻居。
本状态表示双方互相收到了对端发送的Hello报文,报文中的邻居列表也包含本端的Router ID,邻居关系建立。
如果不形成邻接关系则邻居状态机就停留在此状态,否则进入ExStart状态。
DR和BDR只有在邻居状态处于2-Way 及之后的状态才会被选举出来。
5)ExStart:协商主从关系。
建立主从关系主要是为了保证在后续的DD报文交换中能够有序的发送。
邻居间从此时才开始正式建立邻接关系。
6)Exchange:交换DD报文。
本端设备将本地的LSDB用DD报文来描述,并发给邻居设备。
7)Loading:正在同步LSDB。
两端设备发送LSR报文向邻居请求对方的LSA,同步LSDB。
8)Full:建立邻接。
两端设备的LSDB已同步,本端设备和邻居设备建立了完全的邻接关系。
4.6LSDB更新当网络拓扑发生改变时,OSPF路由器会发送LSA的更新报文,具体的流程如下:1)首先在LSDB表中查找有没有此条LSA信息,如果没有就会加入表中。
2)如果找到该条LSA信息,则会对比该条信息的序列号。
如果该条LSA序列号更大,就会更新,并且刷新LSA计时器和序列号。
3)如果找到该条LSA信息,对比后发现序列号小于原来的,就会认为该条信息重传过来的老旧LSA,就不会更新LSDB表,丢弃更新报文。
5LSA类型LSA说白了就是OSPF生成的路由信息,在OSPF中LSA共分成11类,但在通常情况下,使用最多的还是以下几类:1)第一类LSA:Router LSA,描述区域内部与路由器直连的链路信息,所有路由器都会产生此类LSA,并且只在区域内部传播。