07-OSPFv3配置
本章节下载: 07-OSPFv3配置 (210.29 KB)
目 录
OSPFv3是OSPF(Open Shortest Path First,开放式最短路径优先)版本3的简称,主要提供对IPv6的支持,遵循的标准为RFC 5340。
OSPFv3和OSPFv2在很多方面是相同的:
· Router ID,Area ID仍然是32位的。
· 相同类型的报文:Hello报文,DD(Database Description,数据库描述)报文,LSR(Link State Request,链路状态请求)报文,LSU(Link State Update,链路状态更新)报文和LSAck(Link State Acknowledgment,链路状态确认)报文。
· 相同的邻居发现机制和邻接形成机制。
· 相同的LSA扩散机制和老化机制。
OSPFv3和OSPFv2的不同主要有:
· OSPFv3是基于链路运行;OSPFv2是基于网段运行。在配置OSPFv3时,不需要考虑是否配置在同一网段,只要在同一链路,就可以直接建立联系。
· OSPFv3在同一条链路上可以运行多个实例,即一个接口可以使能多个OSPFv3进程(使用不同的实例)。
· OSPFv3是通过Router ID来标识邻居;OSPFv2则是通过IPv4地址来标识邻居。
关于OSPFv2的介绍,请参见“三层技术-IP路由”中的“OSPF”。
和OSPFv2一样,OSPFv3也有五种报文类型,如下:
· Hello报文:周期性发送,用来发现和维持OSPFv3邻居关系,以及进行DR(Designated Router,指定路由器)/BDR(Backup Designated Router,备份指定路由器)的选举。
· DD(Database Description,数据库描述)报文:描述了本地LSDB(Link State Database,链路状态数据库)中每一条LSA(Link State Advertisement,链路状态通告)的摘要信息,用于两台路由器进行数据库同步。
· LSR(Link State Request,链路状态请求)报文:向对方请求所需的LSA。两台路由器互相交换DD报文之后,得知对端的路由器有哪些LSA是本地的LSDB所缺少的,这时需要发送LSR报文向对方请求所需的LSA。
· LSU(Link State Update,链路状态更新)报文:向对方发送其所需要的LSA。
· LSAck(Link State Acknowledgment,链路状态确认)报文:用来对收到的LSA进行确认。
LSA(Link State Advertisement,链路状态通告)是OSPFv3协议计算和维护路由信息的主要来源。在RFC 5340中定义了七类LSA,描述如下:
· Router-LSA:由每个路由器生成,描述本路由器的链路状态和开销,只在路由器所处区域内传播。
· Network-LSA:由广播网络和NBMA(Non-Broadcast Multi-Access,非广播多路访问)网络的DR(Designated Router,指定路由器)生成,描述本网段接口的链路状态,只在DR所处区域内传播。
· Inter-Area-Prefix-LSA:和OSPFv2中的Type-3 LSA类似,该LSA由ABR(Area Border Router,区域边界路由器)生成,在与该LSA相关的区域内传播。每一条Inter-Area-Prefix-LSA描述了一条到达本自治系统内其他区域的IPv6地址前缀的路由。
· Inter-Area-Router-LSA:和OSPFv2中的Type-4 LSA类似,该LSA由ABR生成,在与该LSA相关的区域内传播。每一条Inter-Area-Router-LSA描述了一条到达本自治系统内的ASBR(Autonomous System Boundary Router,自治系统边界路由器)的路由。
· AS-external-LSA:由ASBR生成,描述到达其它AS(Autonomous System,自治系统)的路由,传播到整个AS(Stub区域除外)。缺省路由也可以用AS-external-LSA来描述。
· Link-LSA:路由器为每一条链路生成一个Link-LSA,在本地链路范围内传播。每一个Link-LSA描述了该链路上所连接的IPv6地址前缀及路由器的Link-local地址。
· Intra-Area-Prefix-LSA:每个Intra-Area-Prefix-LSA包含路由器上的IPv6前缀信息,Stub区域信息或穿越区域(Transit Area)的网段信息,该LSA在区域内传播。由于Router-LSA和Network-LSA不再包含地址信息,导致了Intra-Area-Prefix-LSA的引入。
与OSPFv3相关的协议规范有:
· RFC 5340:OSPF for IPv6
· RFC 2328:OSPF Version 2
表1-1 OSPFv3配置任务简介
配置任务 |
说明 |
详细配置 |
|
使能OSPFv3功能 |
必选 |
||
配置OSPFv3的路由信息控制 |
配置OSPFv3接口的开销值 |
可选 |
|
调整和优化OSPFv3网络 |
配置接口的DR优先级 |
可选 |
|
配置邻居状态变化的输出开关 |
可选 |
配置接口的网络层地址,使相邻节点的网络层可达。
要在路由器上使能OSPFv3功能,必须先创建OSPFv3进程、指定该进程的Router ID以及在接口上使能OSPFv3功能。
Router ID用来在一个自治系统中唯一的标识一台路由器。在OSPFv3中,用户必须手工配置一个Router ID,而且必须保证自治系统中任意两台路由器的Router ID都不相同。因此,为了保证OSPFv3运行的稳定性,在进行网络规划时,应确定路由器ID的划分并手工配置。需要注意的是,如果在同一台路由器上运行了多个OSPFv3进程,必须为不同的进程指定不同的Router ID。
在一台路由器上可以创建多个OSPFv3进程,OSPFv3进程是本地概念。不同的路由器之间,即使进程不同也可以进行报文交换。
表1-2 使能OSPFv3功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建OSPFv3进程,进入OSPFv3视图 |
ospfv3 [ process-id ] |
缺省情况下,系统不运行OSPFv3进程 |
配置路由器的Router ID |
router-id router-id |
缺省情况下,运行OSPFv3协议的路由器没有Router ID |
进入接口视图 |
interface interface-type interface-number |
- |
在接口上使能OSPFv3 |
ospfv3 process-id area area-id [ instance instance-id ] |
缺省情况下,接口上没有使能OSPFv3 |
在配置OSPFv3的路由信息控制之前,需完成以下任务:
· 配置接口的网络层地址,使相邻节点的网络层可达
· 使能OSPFv3功能
如果没有在接口视图下配置接口的开销值,OSPFv3会根据该接口的带宽自动计算开销值。
表1-3 配置OSPFv3接口的开销值
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入接口视图 |
interface interface-type interface-number |
- |
配置OSPFv3接口的开销值 |
ospfv3 cost value [ instance instance-id ] |
缺省情况下,OSPFv3根据接口的带宽自动计算链路开销,对于VLAN接口,缺省值为1;对于Loopback接口,缺省取值为0 |
本节主要介绍配置接口的DR优先级和邻居状态变化的输出开关。
在调整和优化OSPFv3网络之前,需完成以下任务:
· 配置接口的网络层地址,使相邻节点的网络层可达
· 使能OSPFv3功能
表1-4 配置接口的DR优先级
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入接口视图 |
interface interface-type interface-number |
- |
配置接口的DR优先级 |
ospfv3 dr-priority priority [ instance instance-id ] |
缺省情况下,接口的DR优先级为1 |
路由器接口的DR优先级将影响接口在选举DR时所具有的资格,优先级为0的路由器不会被选举为DR或BDR。
打开邻居状态变化的输出开关后,邻居状态变化的日志信息会输出到配置终端上。
表1-5 配置邻居状态变化的输出开关
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入OSPFv3视图 |
ospfv3 [ process-id ] |
- |
配置邻居状态变化的输出开关 |
log-peer-change |
缺省情况下,邻居状态变化的输出开关处于打开状态 |
在完成上述配置后,在任意视图下执行display命令可以显示配置后OSPFv3的运行情况,通过查看显示信息验证配置的效果。
表1-6 OSPFv3显示和维护
操作 |
命令 |
显示OSPFv3进程的概要信息 |
display ospfv3 [ process-id ] brief |
显示OSPFv3的接口信息 |
display ospfv3 [ process-id ] interface [ interface-type interface-number | all ] |
显示OSPFv3的链路状态数据库信息 |
display ospfv3 [ process-id ] lsdb [ [ { external | inter-prefix | inter-router | intra-prefix | link | network | router } [ link-state-id ] [ originate-router router-id | self-originate ] ] | statistics ] |
显示OSPFv3邻居信息 |
display ospfv3 [ process-id ] [ area area-id ] peer [ [ interface-type interface-number ] [ verbose ] | peer-router-id | statistics ] |
显示OSPFv3路由表信息 |
display ospfv3 [ process-id ] routing [ ipv6-address prefix-length | ipv6-address/prefix-length ] |
显示OSPFv3的报文统计信息 |
display ospfv3 [ process-id ] statistics |
如图1-1所示,所有的交换机都运行OSPFv3,整个自治系统划分为3个区域。其中Switch B和Switch C作为ABR来转发区域之间的路由。
图1-1 OSPFv3区域配置组网图
(1) 配置各接口的IPv6地址(略)
(2) 配置OSPFv3基本功能
# 配置Switch A,启动OSPFv3,并配置其Router ID为1.1.1.1。
<SwitchA> system-view
[SwitchA] ospfv3
[SwitchA-ospfv3-1] router-id 1.1.1.1
[SwitchA-ospfv3-1] quit
[SwitchA] interface vlan-interface 300
[SwitchA-Vlan-interface300] ospfv3 1 area 1
[SwitchA-Vlan-interface300] quit
[SwitchA] interface vlan-interface 200
[SwitchA-Vlan-interface200] ospfv3 1 area 1
[SwitchA-Vlan-interface200] quit
# 配置Switch B,启动OSPFv3,并配置其Router ID为2.2.2.2。
<SwitchB> system-view
[SwitchB] ospfv3
[SwitchB-ospf-1] router-id 2.2.2.2
[SwitchB-ospf-1] quit
[SwitchB] interface vlan-interface 100
[SwitchB-Vlan-interface100] ospfv3 1 area 0
[SwitchB-Vlan-interface100] quit
[SwitchB] interface vlan-interface 200
[SwitchB-Vlan-interface200] ospfv3 1 area 1
[SwitchB-Vlan-interface200] quit
# 配置Switch C,启动OSPFv3,并配置其Router ID为3.3.3.3。
<SwitchC> system-view
[SwitchC] ospfv3
[SwitchC-ospfv3-1] router-id 3.3.3.3
[SwitchC-ospfv3-1] quit
[SwitchC] interface vlan-interface 100
[SwitchC-Vlan-interface100] ospfv3 1 area 0
[SwitchC-Vlan-interface100] quit
[SwitchC] interface vlan-interface 400
[SwitchC-Vlan-interface400] ospfv3 1 area 2
[SwitchC-Vlan-interface400] quit
# 配置Switch D,启动OSPFv3,并配置其Router ID为4.4.4.4。
<SwitchD> system-view
[SwitchD] ospfv3
[SwitchD-ospfv3-1] router-id 4.4.4.4
[SwitchD-ospfv3-1] quit
[SwitchD] interface vlan-interface 400
[SwitchD-Vlan-interface400] ospfv3 1 area 2
[SwitchD-Vlan-interface400] quit
# 查看Switch B的OSPFv3邻居状态。
[SwitchB] display ospfv3 peer
OSPFv3 Process 1 with Router ID 2.2.2.2
Area: 0.0.0.0
-------------------------------------------------------------------------
Router ID Pri State Dead-Time Interface Inst ID
3.3.3.3 1 Full/Backup 00:00:40 Vlan100 0
Area: 0.0.0.1
-------------------------------------------------------------------------
Router ID Pri State Dead-Time Interface Inst ID
1.1.1.1 1 Full/DR 00:00:40 Vlan200 0
# 查看Switch C的OSPFv3邻居状态。
[SwitchC] display ospfv3 peer
OSPFv3 Process 1 with Router ID 3.3.3.3
Area: 0.0.0.0
-------------------------------------------------------------------------
Router ID Pri State Dead-Time Interface Inst ID
2.2.2.2 1 Full/DR 00:00:40 Vlan100 0
Area: 0.0.0.2
-------------------------------------------------------------------------
Router ID Pri State Dead-Time Interface Inst ID
4.4.4.4 1 Full/Backup 00:00:40 Vlan400 0
# 查看Switch D的OSPFv3路由表信息。
[SwitchD] display ospfv3 routing
OSPFv3 Process 1 with Router ID 4.4.4.4
-------------------------------------------------------------------------
E1 - Type 1 external route, IA - Inter area route, I - Intra area route
E2 - Type 2 external route, * - Selected route
*Destination: 2001::/64
Type : IA Cost : 2
NextHop : FE80::F40D:0:93D0:1 Interface: Vlan400
*Destination: 2001:1::/64
Type : IA Cost : 3
NextHop : FE80::F40D:0:93D0:1 Interface: Vlan400
*Destination: 2001:2::/64
Type : I Cost : 1
NextHop : directly-connected Interface: Vlan400
*Destination: 2001:3::/64
Type : IA Cost : 4
NextHop : FE80::F40D:0:93D0:1 Interface: Vlan400
Total: 4
Intra area: 1 Inter area: 3 ASE: 0
· Switch A的优先级配置为100,它是网络上的最高优先级,所以Switch A被选为DR;
· Switch C的优先级配置为2,它是优先级次高的,被选为BDR;
· Switch B的优先级配置为0,这意味着它将无法成为DR;
· Switch D没有配置优先级,取缺省值1。
图1-2 OSPFv3的DR选择配置组网图
(1) 配置各接口的IPv6地址(略)
(2) 配置OSPFv3基本功能
# 配置Switch A,启动OSPFv3,并配置其Router ID为1.1.1.1。
<SwitchA> system-view
[SwitchA] ospfv3
[SwitchA-ospfv3-1] router-id 1.1.1.1
[SwitchA-ospfv3-1] quit
[SwitchA] interface vlan-interface 100
[SwitchA-Vlan-interface100] ospfv3 1 area 0
[SwitchA-Vlan-interface100] quit
# 配置Switch B,启动OSPFv3,并配置其Router ID为2.2.2.2。
<SwitchB> system-view
[SwitchB] ospfv3
[SwitchB-ospfv3-1] router-id 2.2.2.2
[SwitchB-ospfv3-1] quit
[SwitchB] interface vlan-interface 200
[SwitchB-Vlan-interface200] ospfv3 1 area 0
[SwitchB-Vlan-interface200] quit
# 配置Switch C,启动OSPFv3,并配置其Router ID为3.3.3.3。
<SwitchC> system-view
[SwitchC] ospfv3
[SwitchC-ospfv3-1] router-id 3.3.3.3
[SwitchC-ospfv3-1] quit
[SwitchC] interface vlan-interface 100
[SwitchC-Vlan-interface100] ospfv3 1 area 0
[SwitchC-Vlan-interface100] quit
# 配置Switch D,启动OSPFv3,并配置其Router ID为4.4.4.4。
<SwitchD> system-view
[SwitchD] ospfv3
[SwitchD-ospfv3-1] router-id 4.4.4.4
[SwitchD-ospfv3-1] quit
[SwitchD] interface vlan-interface 200
[SwitchD-Vlan-interface200] ospfv3 1 area 0
[SwitchD-Vlan-interface200] quit
# 查看Switch A的邻居信息,可以看到DR优先级(缺省为1)以及邻居状态,此时优先级相等,Router ID大者被选为DR,可以看到Switch D为DR,Switch C为BDR。
[SwitchA] display ospfv3 peer
OSPFv3 Process 1 with Router ID 1.1.1.1
Area: 0.0.0.0
-------------------------------------------------------------------------
Router ID Pri State Dead-Time Interface Inst ID
2.2.2.2 1 2-Way/DROther 00:00:36 Vlan200 0
3.3.3.3 1 Full/Backup 00:00:35 Vlan100 0
4.4.4.4 1 Full/DR 00:00:33 Vlan200 0
# 查看Switch D的邻居信息,可以看到Switch D和其他邻居之间的邻居状态都为Full。
[SwitchD] display ospfv3 peer
OSPFv3 Process 1 with Router ID 4.4.4.4
Area: 0.0.0.0
-------------------------------------------------------------------------
Router ID Pri State Dead-Time Interface Inst ID
1.1.1.1 1 Full/DROther 00:00:30 Vlan100 0
2.2.2.2 1 Full/DROther 00:00:37 Vlan200 0
3.3.3.3 1 Full/Backup 00:00:31 Vlan100 0
(3) 配置接口的DR优先级
# 配置Switch A的接口Vlan-interface100的DR优先级为100。
[SwitchA] interface vlan-interface 100
[SwitchA-Vlan-interface100] ospfv3 dr-priority 100
[SwitchA-Vlan-interface100] quit
# 配置Switch B的接口Vlan-interface200的DR优先级为0。
[SwitchB] interface vlan-interface 200
[SwitchB-Vlan-interface200] ospfv3 dr-priority 0
[SwitchB-Vlan-interface200] quit
# 配置Switch C的接口Vlan-interface100的DR优先级为2。
[SwitchC] interface vlan-interface 100
[SwitchC-Vlan-interface100] ospfv3 dr-priority 2
[SwitchC-Vlan-interface100] quit
# 显示Switch A的邻居信息,可以看到DR优先级已经更新,但DR/BDR并未改变。
[SwitchA] display ospfv3 peer
OSPFv3 Process 1 with Router ID 1.1.1.1
Area: 0.0.0.0
-------------------------------------------------------------------------
Router ID Pri State Dead-Time Interface Inst ID
2.2.2.2 0 2-Way/DROther 00:00:36 Vlan200 0
3.3.3.3 2 Full/Backup 00:00:35 Vlan200 0
4.4.4.4 1 Full/DR 00:00:33 Vlan200 0
# 显示Switch D的邻居信息,可以看到Switch D仍然为DR。
[SwitchD] display ospfv3 peer
OSPFv3 Process 1 with Router ID 4.4.4.4
Area: 0.0.0.0
-------------------------------------------------------------------------
Router ID Pri State Dead-Time Interface Inst ID
1.1.1.1 100 Full/DROther 00:00:30 Vlan100 0
2.2.2.2 0 Full/DROther 00:00:37 Vlan200 0
3.3.3.3 2 Full/Backup 00:00:31 Vlan100 0
(4) 重新进行DR/BDR选择
# 将所有接口进行一次shutdown和undo shutdown,使OSPFv3进行DR/BDR的重新选举。
# 查看Switch A的邻居信息,可以看到Switch C为BDR。
[SwitchA] display ospfv3 peer
OSPFv3 Process 1 with Router ID 1.1.1.1
Area: 0.0.0.0
-------------------------------------------------------------------------
Router ID Pri State Dead-Time Interface Inst ID
2.2.2.2 0 Full/DROther 00:00:36 Vlan200 0
3.3.3.3 2 Full/Backup 00:00:35 Vlan100 0
4.4.4.4 1 Full/DROther 00:00:33 Vlan200 0
# 查看Switch D的邻居信息,可以看到Switch A为DR。
[SwitchD] display ospfv3 peer
OSPFv3 Process 1 with Router ID 4.4.4.4
Area: 0.0.0.0
-------------------------------------------------------------------------
Router ID Pri State Dead-Time Interface Inst ID
1.1.1.1 100 Full/DR 00:00:30 Vlan100 0
2.2.2.2 0 2-Way/DROther 00:00:37 Vlan200 0
3.3.3.3 2 Full/Backup 00:00:31 Vlan100 0
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!