OSPFv3路由协议学习
- 格式:docx
- 大小:17.48 KB
- 文档页数:2
OSPF路由协议基础(一)OSPF(O p en Short Path First)最优路径算法路山协议。
OSPF路山协议的Dis tance值为11 0 ,它拥有一个Met r i c值,此值是OSPF路由协议用来衡量链路好坏的,当一条链路的Metric值越小,则证明此条链路越好,反之此条链路越差。
路由协议按数据传输方式分,分为有类(Clas sfull)和无类(C I assle s s)两种,有类路山协议是指传输可达性路山信息(NLRI)时不带子网掩码;无类路山协议是指传输可达性路山信息(NLRI)时带子网掩码。
路山协议按数据传输类型分,分为距离向量(Distance Ve c t or)和链路状态(Link S t ate)两种,距离向量(DV)路由协议没有路由器ID(Router-ID),并且只传递可达性路由信息(NLRI);链路状态(LS)路ill协议限制每一台路山器必须要有一个未被使用过的路山器ID(Router-ID),而且它无条件转发任何从邻居传来的可达性路山信息(N LR I )。
OSPF路由协议基础(二)距离向量路由协议:此时,假如Route r A后面有一个1.0网段,RouterB后面有一个2.0网段,Rout e rA告诉RouterB通过我(Router A )可以到达1.0网段,Rout erB告诉R ou t e rC通过我(RouterB)可以到达1 .0网段,此时,Ro u t erA到达1.0 网段的路断了,那么,他会查找它的邻居Route rB,而此时RouterC也要到I . 0网段,他也会去查找它的邻居Rou t erB,这时Rout e rB的路由表里有 1.0网段的路ill,Route r A和Route「C都会将数据发到RouterB,可是,Ro uter B到不了1.0网段,这样就形成了路山环路。
各种距离向量路山协议都有它自己解决路由环路的方法,在此暂不讨论。
Osfp 路由协议1、OSPF协议概述OSPF(Open Short Path First)开放最短路径优先协议,是一种基于链路状态的内部网协议(Interior Gateway Protocol),主要用于规模较大的网络中。
2、OSPF的特点●适应范围广:支持各种规模的网络,最多可支持数百台路由器。
●快速收敛:在网络拓扑结构发生变化后立即发送更新报文,使这一变化在自治系统中被处理。
●无环路由:根据收集到的链路状态用最短路径树算法计算路由。
●区域划分:允许自治系统内的网络被划分成区域来管理,区域间传送的路由信息被汇聚,从而减少了占用的网络资源。
●路由分级:使用4类不同的路由,按照优先顺序分别是区域间路由、区域路由、第一类路由、第二类路由。
3、OSPF的基本概念●自治系统(Autonomous System,AS):为一组路由器使用相同路由协议交换路由信息的路由器。
●路由器ID号:运行OSPF协议的路由器,每一个OSPF进程必须存在自己的Router-ID。
●OSPF邻居:OSPF路由器启动后,便会通过OSPF接口向外发送Hello报文,收到Hello报文的OSPF路由器会检查报文中所定义的参数,使双方成为邻居。
●OSPF连接:只有当OSPF路由器双方成功交换DD报文,交换LSA并达到LSDB的同步后,才能形成邻接关系。
4、OSPF路由的计算过程每台路由器根据自己周围的网络拓扑结构生成链路状态通告(State Advertisement,LSA),并通过更新报文将LSA发送给网络中的其他OSPF路由器。
每台OSPF路由器都会收到其他路由器通告的LSA,所有的LSA放在一起便组成了链路状态数据库(Link State Database,LSD)。
LSA是对路由器周围网络拓扑结构的描述,LSDB 则是对整个自治系统的网络拓扑结构的描述。
OSPF路由器将LSDB转换成一张带权的有向图,这张图便是对整个网络拓扑结构的真实反映。
H3C OSPFv3配置命令(V150104)版本说明目录版本说明 (2)目录 (2)abr-summary (4)area (4)default cost (5)default-cost (5)display ospfv3 (6)display ospfv3 interface (8)display ospfv3 lsdb (9)display ospfv3 lsdb statistic (11)display ospfv3 next-hop (12)display ospfv3 peer (13)display ospfv3 peer statistic (15)display ospfv3 request-list (16)display ospfv3 retrans-list (17)display ospfv3 routing (19)display ospfv3 statistic (20)display ospfv3 topology (21)display ospfv3 vlink (22)filter-policy export (23)filter-policy import (24)import-route (25)log-peer-change (26)maximum load-balancing (26)ospfv3 (27)ospfv3 area (27)ospfv3 cost (28)ospfv3 dr-priority (28)ospfv3 mtu-ignore (29)ospfv3 timer dead (30)ospfv3 timer hello (30)ospfv3 timer retransmit (31)ospfv3 trans-delay (31)preference (32)router-id (33)silent-interface (33)spf timers (34)stub (35)vlink-peer (35)abr-summary【命令】abr-summary ipv6-address prefix-length [ not-advertise ]undo abr-summary ipv6-address prefix-length【视图】OSPFv3区域视图【参数】ipv6-address:聚合路由的目的IPv6地址。
OSPFv3配置ff02::5是为OSPFv3路由协议预留的IPv6组播地址。
OSPFv3中的路由条⽬下⼀跳地址是链路本地地址。
OSPFv3是运⾏在IPv6⽹络的OSPF协议。
运⾏OSPFv3的路由器使⽤物理接⼝的链路本地单播地址为源地址来发送OSPF报⽂。
相同链路上的路由器互相学习与之相连的其它路由器的链路本地地址,并在报⽂转发的过程中将这些地址当成下⼀跳信息使⽤IPv6中使⽤组播地址ff02::5来表⽰All SPFRouters,⽽OSPFv2中使⽤的是组播地址224.0.0.5。
需要注意的是,OSPFv3和OSPFv2版本互不兼容。
Router ID在OSPFv3中也是⽤于标识路由器的。
与OSPFv2的Router ID不同,OSPFv3的Router ID必须⼿⼯配置;如果没有⼿⼯配置Router ID,OSPFv3将⽆法正常运⾏。
OSPFv3在⼴播型⽹络和NBMA⽹络中选举DR和BDR的过程与OSPFv2相似。
IPv6使⽤组播地址FF02::6表⽰AllDRouters,⽽OSPFv2中使⽤的是组播地址224.0.0.6。
NBMA/⾮⼴播-多路访问⽹络⽤来描述如X.25和帧中继这类本⾝并不具有⽀持⼴播和多播能⼒的多路访问⽹络OSPFv2是基于⽹段运⾏的, OSPFv3的实现是基于链路的。
在配置OSPFv3时,不需要考虑路由器的接⼝是否配置在同⼀⽹段,只要路由器的接⼝连接在同⼀链路上,就可以不配置IPv6全局地址⽽直接建⽴联系。
这⼀变化影响了OSPFv3协议报⽂的接收、Hello报⽂的内容以及⽹络LSA的内容。
OSPFv3直接使⽤IPv6的扩展头部(AH和ESP)来实现认证及安全处理,不再需要OSPFv3⾃⾝来完成认证。
ipv6命令⽤来使能路由器的IPv6功能。
要在路由器上运⾏OSPFv3协议,⾸先必须使能IPv6功能。
ospfv3 [process-id ]命令⽤来创建并运⾏OSPFv3进程,process-id取值范围是1~65535。
学习目标•学完本节后,你将能够:•掌握OSPFv3基本功能配置•掌握OSPFv3信息查看•掌握OSPFv3特殊区域配置•掌握OSPFv3虚连接配置•掌握OSPFv3路由引入及过滤配置•掌握OSPFv3认证配置OSPFv3基本功能•系统视图执行命令ospfv3[process-id][vpn-instance vpn-instance-name],启动OSPFv3,进入OSPFv3视图。
•执行命令router-id router-id,配置Router ID•OSPFv3视图执行命令area area-id,进入OSPFv3区域视图。
区域ID可以采用十进制整数或IPv4地址形式输入,但显示时使用IPv4地址形式。
OSPFv3的区域不能直接删除,当区域视图下的所有配置都删除,此区域就会被系统自动删除。
•接口视图执行命令ospfv3process-id area area-id[instance instance-id],在接口上使能OSPFv3。
区域ID 可以采用十进制整数或IPv4地址形式输入,但显示时使用IPv4地址形式。
•执行命令ospfv3network-type{broadcast|nbma|p2mp[non-broadcast]|p2p}[instance instance-id],配置接口的网络类型。
OSPFv3查看信息•使用display ospfv3[process-id]命令查看OSPFv3进程的概要信息。
•使用display ospfv3[process-id]interface[area area-id][interface-type interface-number]命令查看OSPFv3接口信息。
•使用以下命令查看OSPFv3的LSDB信息:▫display ospfv3 [ process-id ] lsdb[ area area-id ] [ originate-router advertising-router-id | self-originate ] [ { router | network | inter-router [ asbr-router asbr-router-id ] | { inter-prefix | nssa} [ ipv6-address prefix-length ] | link | intra-prefix | grace } [ link-state-id ] ]▫display ospfv3 [ process-id ] lsdb[ originate-router advertising-router-id | self-originate ] external [ ipv6-address prefix-length ] [ link-state-id ]•使用display ospfv3[process-id][area area-id]peer[interface-type interface-number][verbose]或display ospfv3[process-id][area area-id]peer neighbor-id[verbose]命令查看OSPFv3邻居信息。
实验25 IPv6 OSPFv3 一、实验拓扑图,如图1.1所示:图1.1 OSPFv3实验拓扑图二、实验说明:1.本实验拓扑图如图1.1所示;2.要求全网配置成IPv6网络;3.全网运行OSPFv3协议;4.全网互通。
三、预配置:1.R1的预配置:Router>enRouter#conf tRouter(config)#no ip do loRouter(config)#line 0Router(config-line)#no exec-tRouter(config-line)#logg sRouter(config-line)#ho R1R1(config)#ipv6 unicast-routingR1(config)#int lo0R1(config-if)#ipv6 address 1::1/64R1(config-if)#int s1/0R1(config-if)#ipv6 address 2001:12::1/64R1(config-if)#no sh2.R2的预配置:Router>enRouter#conf tRouter(config)#no ip do loRouter(config)#line 0Router(config-line)#no exec-tRouter(config-line)#logg sRouter(config-line)#ho R2R2(config)#ipv6 unicast-routingR2(config)#interface s1/0R2(config-if)#ipv6 address 2001:12::2/64R2(config-if)#no shR2(config-if)#interface s1/1R2(config-if)#ipv6 address 2001:23::2/64R2(config-if)#no sh3.R3的预配置:Router>enRouter#conf tRouter(config)#no ip do loRouter(config)#line 0Router(config-line)#no exec-tRouter(config-line)#logg sRouter(config-line)#ho R3R3(config)#ipv6 unicast-routingR3(config)#int s1/1R3(config-if)#ipv6 address 2001:23::3/64R3(config-if)#no shR3(config-if)#int s1/0R3(config-if)#ipv6 address 2001:34::3/64R3(config-if)#no sh4.R4的预配置:Router>enRouter#conf tRouter(config)#no ip do loRouter(config)#line 0Router(config-line)#no exec-tRouter(config-line)#logg sRouter(config-line)#ho R4R4(config)#ipv6 unicast-routingR4(config)#int s1/0R4(config-if)#ipv6 address 2001:34::4/64R4(config-if)#no shR4(config-if)#int f0/0R4(config-if)#ipv6 address 4::4/64R4(config-if)#no sh四、配置及调试过程:1.在路由器上开启OSPFv3,并在接口上应用:R1(config)#ipv6 router ospf 1R1(config-rtr)#router-id 1.1.1.1R1(config-rtr)#default-information originate metric 30 metric-type 2R1(config-if)#int s1/0R1(config-if)# ipv6 ospf 1 area 1R2(config)#ipv6 router ospf 1R2(config-rtr)#router-id 2.2.2.2R2(config-if)#interface s1/1R2(config-if)#ipv6 ospf 1 a 0R2(config-if)#int s1/0R2(config-if)#ipv6 ospf 1 a 1R3(config)#ipv6 router ospf 1R3(config-rtr)#router-id 3.3.3.3R3(config-if)#int s1/0R3(config-if)#ipv6 ospf 1 a 2R3(config-if)#int s1/1R3(config-if)#ipv6 ospf 1 a 0R4(config)#ipv6 router ospf 1R4(config-rtr)#router-id 4.4.4.4R4(config-if)#int s1/0R4(config-if)#ip ospf 1 area 2R4(config-if)#int f0/0R4(config-if)#ipv6 ospf 1 area 22.测试网络连通性:R4(config-if)#do ping 1::1Type escape sequence to abort.Sending 5, 100-byte ICMP Echos to 1::1, timeout is 2 seconds:!!!!!Success rate is 100 percent (5/5), round-trip min/avg/max = 24/44/68 ms 已通!3.在R4上查看IPv6路由表:R4(config-if)#do sh ipv6 routeIPv6 Routing Table - 6 entriesCodes: C - Connected, L - Local, S - Static, R - RIP, B - BGPU - Per-user Static route, M - MIPv6I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summaryO - OSPF intra, OI - OSPF inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2D - EIGRP, EX - EIGRP externalOE2 ::/0 [110/30], tag 1via FE80::C802:11FF:FE34:0, Serial1/0OI 2001:12::/64 [110/192]via FE80::C802:11FF:FE34:0, Serial1/0OI 2001:23::/64 [110/128]via FE80::C802:11FF:FE34:0, Serial1/0C 2001:34::/64 [0/0]via ::, Serial1/0L 2001:34::4/128 [0/0]via ::, Serial1/0L FF00::/8 [0/0]via ::, Null0以上输出说明,路由器已通过OSPFv3协议学习到了三条路由,而且学到了R1上的默认路由,代码为OE2。
OSPFV3⽬录OSPFv3OSPFv3的概念:OSPFv3是基于IPv6的OSPF协议,⼯作在IPv6上,可⽀持多协议,OSPFv3在OSPFv2上做了改进,是⼀个独⽴的路由协议,可以⽀持IPv4和IPv6,OSPFv3与OSPFv2的相同点:⽹络类型和接⼝类型接⼝状态机和邻居状态机LSDBLSA的泛洪机制报⽂SPF算法及SPF计算过程OSPFv3与OSPFv2的不同点:OSPFv3OSPFv2基于链路基于⼦⽹利⽤链路本地地址来维持邻居利⽤本地接⼝地址来维持邻居报⽂中移除了协议地址的字段1. OSPFV3基于链路,⽽OSPFv2基于⽹段,OSPFv3运⾏在IPv6协议上,IPv6是基于链路⽽不是⽹段,既不论接⼝是否配置IPv6地址,也不论路由器间的接⼝地址是否在同⼀⽹段,只要双⽅在同⼀条链路上,都可以建⽴OSPFv3的邻居关系。
2. OSPFv3利⽤链路本地地址来维持邻居。
OSPFv3使⽤链路本地地址来维持邻居,同步LSDB,链路上的报⽂,除Vlink外的所有OSPFv3接⼝都使⽤链路本地地址作为报⽂源地址这样的话,不⽤配置IPv6全局地址,就可以得到OSPFv3拓扑,实现拓扑与地址分离运⾏IPv6的路由器不转发⽬的地址为链路本地地址的IPv6报⽂,此类报⽂置在本地链路有效。
OSPFv3的虚链路,如果是⾮直连的虚链路,那么就不能依赖于链路本地地址了,需要使⽤全球单播地址来建⽴3. OSPFv3协议报⽂上移除了协议地址OSPFv2中的1/2类LSA中含有太多关于ipv4地址的描述,通过观察OSPFv2的1/2类LSA就可以得知当前运⾏的协议为IPv4OSPFv3中由于IPv6协议地址太长,会过多的占⽤报⽂空间,若之后想扩展OSPFv3协议,那么就必须的重新改写了,重新出⼀个OSPFv4,于是OSPFv3移除了对协议地址的依赖性,⽤接⼝ID来取代本地接⼝的IP地址,对端接⼝IP地址,就使⽤链路本地地址这样意味着拓扑与协议地址分离了,建⽴邻居关系的不在依赖于协议地址,并且OSPFv3的1/2类LSA可以为多种协议簇服务,可以同时为IPv4和IPv6创建协议进程,⽬前华为不⽀持,所以在当前的双栈环境下,依旧要创建OSPFv2的进程及OSPFv3的进程4. OSPFv3链路间的泛洪范围OSPFv3添加了链路间的泛洪范围,新的LSA-8类型仅在可以在邻居之间通告,其LSA不会被泛洪到其他链路,LSA-8承载内容仅在直连的邻居中通告,不会被泛洪到其他链路,LSA-8所承载的内容只在直连邻居之间有⽤,⽤于通告该链路上的地址前缀及link-local地址5. OSPFv3⽀持⼀条链路上多个进程(实例复⽤)OSPFv3在OSPF报⽂头中新加了字域:instance id,他是定义在接⼝上的标识OSPF实例的,取值范围为0-255,OSPFv2下,⼀个接⼝只能运⾏⼀个OSPF实例,⽽在OSPFv3中,可以让⼀个接⼝运⾏多个OSPF实例,并且在⼀条链路上,只有OSPF实例号相同才能建⽴OSPF邻居关系,OSPF实例只在本地有效。
OSPFv3的原理和应用1. OSPFv3简介OSPFv3(Open Shortest Path First version 3)是一种用于IPv6网络的动态路由协议。
它是IPv6网络中最常用的内部网关协议(IGP),用于计算和选择最佳路径,实现IPv6网络的自动路由分发。
2. OSPFv3的工作原理OSPFv3基于链路状态路由协议(Link State Routing Protocol),通过交换链路状态信息来计算网络中的最短路径。
下面是OSPFv3的工作原理的步骤:1.邻居发现:路由器通过发送Hello消息来建立与相邻路由器的邻居关系。
Hello消息中包含路由器的标识和接口及其启用OSPFv3状态的信息。
2.建立邻居关系:当两个路由器接收到对方的Hello消息,并验证消息中的信息正确时,它们就会建立邻居关系。
邻居关系的建立要求路由器具有相同的Area ID。
3.链路状态数据库同步:邻居关系建立后,路由器会交换链路状态数据库(Link State Database)中的信息,使路由器之间的数据库保持同步。
链路状态数据库记录了网络中所有路由器和链路的信息。
4.最短路径计算:路由器使用Dijkstra算法来计算网络中的最短路径。
该算法基于链路状态数据库中的信息,通过计算最短路径树来确定每个目的地的最短路径。
5.路由表更新:最短路径计算完成后,每个路由器都会更新自己的路由表,将所选的最佳路径添加到路由表中。
这样,路由器就能够根据路由表中的信息来转发数据包。
3. OSPFv3的应用OSPFv3广泛应用于IPv6网络中,为网络提供高效的动态路由功能。
下面是OSPFv3在实际应用中的几个方面:1.企业网络:OSPFv3被广泛用于企业网络中,特别是大型企业网络。
它能够自动计算最佳路由,确保数据在网络中的快速传输。
2.服务提供商网络:许多大型互联网服务提供商(ISP)使用OSPFv3作为核心路由协议,以提供高可靠性和高性能的网络连接。
OSPFv2与OSPFv3的区别1 概述OSPFv2是IETF组织开发的一个基于链路状态的内部网关协议,具有适应范围广、收敛迅速、无自环、便于层级化网络设计等特点,因此在IPv4网络中获得了广泛应用。
随着IPv6网络的建设,同样需要动态路由协议为IPv6报文的转发提供准确有效的路由信息。
基于此,IETF在保留了OSPFv2优点的基础上针对IPv6网络修改形成了OSPFv3。
OSPFv3主要用于在IPv6网络中提供路由功能,是IPv6网络中路由技术的主流协议。
2 OSPFv3技术实现与OSPFv2相比,OSPFv3在工作机制上与OSPFv2基本相同;但为了支持IPv6地址格式,OSPFv3对OSPFv2做了一些改动。
下面先对OSPFv2进行简要介绍,之后再详细介绍OSPFv3与OSPFv2的异同点。
2.1 OSPFv2简介2.1.1 OSPF基本概念1. DR和BDR在广播网或NBMA网络中,OSPF协议定义了DR和BDR,BDR是对DR的一个备份,在选举DR的同时也选举出BDR。
DR和BDR会和本网段内的所有DROther(既不是DR也不是BDR的路由器)建立邻接关系并交换路由信息,DROther之间不建立邻接关系、不交换路由信息,从而减少了广播网络和NBMA网络上各路由器之间邻接关系的数量,同时减少网络流量,节约了带宽资源。
2.区域随着网络规模日益扩大,当一个大型网络中的路由器都运行OSPF路由协议时,会存在以下问题:●路由器数量会增多,每台路由器都生成LSA,整个LSDB即所有LSA的集合会非常大,占用大量存储空间;●计算最短路径树耗时增加,导致CPU负担很重;●在网络规模增大之后,拓扑结构发生变化的概率也会增大,网络会经常处于“振荡”之中,造成网络中大量的OSPF协议报文在传递,降低了网络的带宽利用率。
更为严重的是,每一次变化都会导致网络中所有的路由器重新进行路由计算。
OSPF协议通过将自治系统划分成不同的区域来解决上述问题。
第23期2020年8月No.23August ,2020基于eNSP 的OSPFv3路由仿真设计与实现摘要:随着IPv4地址的耗尽和国家大力推进IPv6的发展和部署,高校在本科教学中也应该提升IPv6相关知识内容的教学比例。
学校结合实际情况,引入华为模拟器eNSP 进行实践教学,设计了一系列IPv6相关的实验供学生学习。
文章主要介绍了基于eNSP 设计的IPv6动态路由协议OSPFv3的配置和应用,帮助学生理解和掌握OSPFv3协议。
关键词:eNSP ;模拟器;OSPFv3;IPv6中图分类号:TP393.1文献标志码:A 江苏科技信息Jiangsu Science &Technology Information李双梅(南京工业大学浦江学院计算机与通信工程学院,江苏南京211222)基金项目:南京工业大学浦江学院校级重点教育教学改革研究项目;项目编号:2019JG008Z 。
2019年第二批教育部产学合作协同育人项目;项目编号:201902180011。
作者简介:李双梅(1982—),女,湖北潜江人,讲师,硕士;研究方向:计算机网络和人工智能。
引言IPv4的最大问题是其地址资源不足,早在2011年初ICANN 就公开表示,全球IPv4地址已分配完毕[1]。
随着移动互联网、物联网等的快速发展,IPv4地址紧缺问题日益严重,我国大力推进IPv6的发展和部署。
2019年4月16日,工业和信息化部发布《关于开展2019年IPv6网络就绪专项行动的通知》,业界将2019年称为IPv6元年。
在政府、运营商、设备制造商以及其他相关企业的共同努力下,IPv6建设取得了显著成效。
但是在当前计算机网络相关课程的本科教学中,针对IPv6的教学内容稍显不足,特别是在实践应用方面,由于实验设备受限等因素无法满足网络课程对于实践教学的需求。
文章结合学校实际情况,引入华为模拟器eNSP 进行实践教学,设计IPv6相关实验供学生学习和实践。
动态路由协议OSPF学习记忆口诀(v1.1)作者方胜山审核分类网络设备子类H3C更新时间2014年07月5日关键字路由协议,ospf摘要本文介绍了路由协议ospf知识点的快速记忆主要适网络设备动态路由协议ospf用环境版本说明拟制/修改责任人拟制/修改日期修改内容/理由版本号V1.1方胜山2014-07-05整理修改目录01.1种链路状态内部网关协议 (2)02.2种关系的区别 (3)03.2组特殊区域 (3)04.虚连接的2个作用 (4)05.广播型网络类型路由器3种角色 (4)06.4种路由器类型 (6)07.4类路由 (6)08.4种网络类型 (7)09.5种报文类型 (8)10.6种LSA类型 (9)11.7大状态机 (10)12.8个特点 (11)13.Ospf区域划分可以解决什么? (12)14.关于224.0.0.5和224.0.0.6 (13)1种链路状态内部网关协议OSPF(Open Shortest Path First,开放最短路径优先)是IETF(Internet Engineering Task Force,互联网工程任务组)组织开发的一个基于链路状态的内部网关协议。
目前针对IPv4协议使用的是OSPF Version2。
Ipv6环境中使用的是ospf version32种关系的区别1)邻居路由器启动后,会通过接口向外发送Hello报文,收到Hello报文的路由器会检查报文中所定义的参数,如果双方一致就会形成邻居关系2)邻接只有当双方成功交换DD报文,交换LSA并达到LSDB同步之后,才形成邻接关系2组特殊区域1)Stub区域和Totally Stub区域Stub区域只接入区域间的路由,不接受as外的路由,为了接收as外的路由,需要发布一条3类lsa缺省路由给区域其他路由器,保持路由可达;Totally stub区域不仅仅是不接收as外的路由,甚至连到区域间的路由都不接收了,完全的孤陋寡闻,为了避免不雯国事变out,只能发布一条3类lsa给区域内其他路由器;2)NSSA区域和Totally NSSA区域Nssa区域相对于stub区域,是对as外部路由可以引用的(stub不能引入),并且产生了特有的7类lsa通告自己区域,相关信息在asr处变化成5类lsa,通告给其他区域。
OSPFv3路由协议学习
OSPFv3 VS OSPFv2 OSPF是一种链路状态路由协议。
它具有标准开放、收敛迅速、无环路、便于层级化设计等众多优点。
IPv4网络中广泛使用的OSPFv2协议由于在报文内容、运行机制等方面与IPv4地址联系得过于紧密,大大制约了它的可扩展性和适应性。
在IPv6环境中,为了使OSPF更好的应用,同时
保留原有的众多优点,因此,在OSPFv2的基础上作了多方面的修改后产生了OSPFv3协议。
OSPFv3相比OSPFv2作出的改进可以分为几个方面来描述。
1.OSPFv3独立于网络协议1)OSPFv3基于链路运行OSPFv2协议是基于子网运行的,邻居之间形成邻接关系的必要条件之一就是两端的IP地址属于同一网段而且掩码相同。
而OSPFv3协议基于链路运行,与具体的IPv6地址、前缀分离开,即使同一链路上的不同节点具有不同网段的IPv6地址时,协议也可以正常运行。
IPV6网络中,将接口地址都看成叶子,只有链路本身是树干。
2)编址性语义的取消在OSPFv2中,协议分组和LSA中的许多字段都是来自于网络上的某个IP地址、掩码或某个IP子网号。
报文的数据内容决定了OSPFv2的多种机制必须基于IPv4来进行,包括邻居路由器标识、邻居建立等等。
在OSPFv3中取消了这些编址性语义,而只保留协议运行必须的核心内容。
比如,Router-LSA和Network-LSA中不再包含网络地址,而只用于传递拓扑信息;LSA的Link State ID依然保留32位长度的IPv4地址格式,但只是一个编号,不再包含地址信息;邻居路由器,包括DR和BDR,都是用Router ID来标识。
这些保证了OSPFv3协议能够独立于网络协议运行。
3)链路本地地址的使用OSPFv2协议要求,每一个运行OSPF的接口都必须有一个IPv4地址,即使是在网络中仅仅用于传输转发的中间节点也必须如此,协议的运行和路由的计算都依赖于这个地址。
而在IPv6中,每个接口都会分配本地链路地址(link-local address),这个地址只在本地链路有效,并不会在整个网络中传播。
OSPFv3使用这个本地链路地址作为协议分组发送的源地址(虚连接除外)和路由的下一跳,在网络规划时就不需要在大量的中间节点规划子网,同样也不需要专门配置IPv6地址。
这样,一方面可以节省大量的全局地址,另一方面可以说协议的运行独立于IPv6,可以方便的对协议进行扩展,实现组播选路等其他的功能。
4)使用专门的LSA来发布路由前缀信息OSPFv2通过Router-LSA和Network-LSA来发布区域内的路由信息和计算拓扑,所以OSPFv2的拓扑结构与IPv4网络信息是密不可分的。
为了改变这种状况,在OSPFv3中,Router-LSA和Network-LSA中仅保留拓扑信息;同时增加了Intra-Area-Prefix-LSA和Link-LSA,分别用于传递区域内路由前缀和传递链路范围内的IPv6前缀。
拓扑信息与前缀信息的分离,使得OSPFv3的运行更加独立于网络协议。
2. OSPFv3的结构更加清晰1)OSPFv3取消了协议报文的验证字段在OSPFv2中使用了专门的验证字段。
而在OSPFv3中使用IPv6标准的验证方式(IP AH和IP ESP)来保证信息传递的安全性,这样一来,既减轻了协议开销,也在一定程度上简化了协议处理流程。
2)OSPFv3更加明确了LSA泛洪范围在OSPFv3中,明确了LSA泛洪的三种范围:本地链路范围(Link-local scope)、区域范围(Area scope)、AS范围(AS scope),并且在LS_Type中增加了专门的字段进行说明。
因此,OSPFv3协议在处理LSA泛洪时不再像OSPFv2中需要根据不同的LSA类型来判断LSA泛洪的范围,而是直接根据专门的字段进行处理就可以了。
3. OSPFv3的可扩展性和适应性更佳1)OSPFv3支持多实例OSPFv2协议规定,不同的实例必须运行在不同的链路上。
OSPFv3协议则提供了对多实例的明确支持,通过在协议报文中增加“instance ID”字段,同时规定,接收报文时对该字段进行判断,只有实例号匹配的报文才会处理,否则丢弃。
这样,即使是在同一链路上也可以运行多个OSPF实例了,而且独立运行不会互相影响。
2)对未知类型LSA的处理在OSPFv2中,当路由器收到自己不支持的LSA时,仅仅是作简单的丢弃处理。
这样,当能力不同的路由器混合组网时,整个网络的处理能力就会受限于能力最低的路由器。
最为突
出的是在广播(或NBMA)网络中,如果DR不支持可选类型的LSA,则DR不能处理的LSA就不能在非DR路由器之间交互了。
在OSPFv3中,对未知类型的LSA的处理作了新的规定:根据LSA中特定字段来进行判断,可以将其泛洪范围限定在本地链路范围内,也可以将其当作已知类型的LSA,根据其中的“泛洪范围”字段发送出去。
这样一来,即使网络中某些路由器的能力有限也不会影响某些特殊LSA的传播,从而具备了更好的适应性。
4.其他OSPFv3针对OSPFv2在设计上的缺陷做了两大改进:一是在多路访问型的链路上优化了DR的选举范围,如果链路上有过多的路由器,都同DR形成邻接,则DR的负担会很重。
OSPFv3采用独有的实例ID字段,在群内各接口设置相同的实例ID,群间相异,配置起来简单。
二是通过设计两种新的LSA(8和9),减少了不必要的SPF计算。
SPF算法的特点是每一次启用都会增加路由器资源占用并造成网络的短时中断,所有的树干都必须重计算一次,算完了才能挂叶子。
OSPFv2和OSPFv3在收到LSA1和2时都会启动SPF算法,在OSPFv3的LSA1和2中不仅包含了该链路的拓扑类型状态还附带了链路上IPV4地址信息,拓扑改变或地址改变都会触动路由器产生新的LSA,但真正需要SPF的是拓扑变化信息,地址的改变不应该去触动SPF(地址只是叶子)。
OSPFv3的LSA1和2中不携带链路上的IPV6地址信息,改变链路上端口的地址不会触动SPF,这也就减少了计算次数。
OSPFV3引入的LSA OSPFv3常用的LSA有八种类型:路由器LSA(LSA1)、网络LSA(LSA2)、区间前缀LSA(LSA3)、区间路由器LSA(LSA4)、AS外部LSA(LSA5)、NSSA外部LSA(LSA7)、链路LSA(LSA8)、区内前缀LSA(LSA9),以上LSA除LSA8和9外,功能和洪泛的范围都与OSPFv2相同。
不同的只是LSA数据结构上做了少量调整和优化(如前所述LSA1和2的数据结构区别最大,也导致了两种新LSA的产生)。
OSPFv3添加了2类新LSA:Link-LSA(类型8)和Intra-Area-Prefix-LSA(类型9)。
其中,Link-LSA 有三个作用:1. 在链路上通告本地链路地址给其它邻居2. 通告本地链路上的邻居关于与自己本地链路相关联的ipv6的前缀列表3. 通告链路状态的选项集合其实这个链路范围是以路由器为边界的,但是可能一个链路上有多个路由器,因此可能会存在多个前缀一个链路的情况,这个时候就是特点2的体现了,用于区分不同的链路,IPV6里一个链路就是一个小网段,比站点小,站点比组织小,组织比国家小。
LSA8主要携带生成者在该端口上的所有IPV6地址信息,洪泛范围是链路本地,及收到直连邻居发出的LSA8将不通告给任何人。
当然,只在本地链路上传递信息是不够的,还需要在area范围内传播,于是有了Intra-Area-Prefix-LSA (域内前缀LSA)。
Intra-Area-Prefix-LSA是在area范围内通告路由前缀。
LSA9携带的是本路由器(或DR的手下)各直连链路上的网络前缀和各前缀所属链路的对应(前缀在哪条链路上)信息,它的洪泛范围是本AREA内。
OSPFv3也使用组播方式洪泛LSA,非DR用FF02::5,DR用FF02::6.。