一、概述 :
OSPFv3:Open Shortest Path First version 3,是一种专为IPv6网络设计的链路状态路由协议使用 ff02::5 ff02::6 做为组播地址,特征:
1、使用Link-Local Address(FE80/10开始)在同一链路上发现邻居及自动配置 ,除vlink外的所有ospfv3都使用LLA做为源地址及下一跳 来发送ospfv3报文
2、不需配置AGUA地址,可以得到实现了网络和拓扑分离
3、通过链路上泛洪的报文不会传播到其他 链路上,减少了不必要的泛洪来节省带宽
4、ospfv3移除所有认证字段
5、使用ipv6的认证及安全处理,不再需要自身来完成 认证
6、OSPFv3的Router LSA和Network LSA里不包含IP地址。IP地址部分由新增的两类LSA(Link LSA和Intra Area Prefix LSA)宣告。
T8:Link LSA,用于路由器宣告各个链路上对应的LLA和AGUA,仅在链路内泛洪:dis ospfv6 link #8类LSA,下一跳
T9:Intra Area Prefix LSA:用于向其他路由器宣告本路由器或本网络(广播及NBMA)的ipv6全局地址信息,仅在区域内泛洪,叶子
7、ospfv3 用 Link-Local 地址来标识和建立邻居关系,表现中是 Link State ID
与ospfv2的区别:
1、v3基于接口链路,而不是基于网段,接口业务地址的更改,不会影响拓扑描述的改变
2、v2的一个网段只能属于一个实例instance,v3支持多实例(配置时instance id要一致),如:ospfv3 2 area 2 instance 2,这样的话,可以做hub-spoke、隔离、注入的操作
3、ospfv3仅能通过Router ID来标识邻居,而v2也可以通过接口地址来标识
4、Link State ID变为接口ID
二、几类LSA的特征描述:
T1:描述设备的链路状态和开销,每个运行ospfv3的设备产生,包含:Link State ID、Originating Router、cost值、Interface ID、Neighbor Interface ID、Neighbor Route ID(T1用 Interface ID 描述了接口的 RID 和邻居 RID),区域内传播,描绘拓扑
T2:描述本链路的链路状态,由 DR 产生,包含Link State ID、Originating Router、关联的链路两端的 RID,区域内传播,链路状况
T8:描述本链路的链路状态,每个运行ospfv3的设备产生,包含:Link State ID、Originating Router、LLA、prefix地址/掩码、priority(T8用Link State ID关联了T1的Interface ID,相当于关联了接口的“门”和产生源产生路由ID),链路间传播,下一跳
T9:描述与Router-LSA和Network-LSA相关联的IPv6前缀地址,包含:Link State ID、Originating Router、Preferenced LS Type(显示关联的LSA类型,2001 T1、2002 T2、2008 T8、2009 T9... )、Preferenced Link State ID、Preferenced Originating Router、Prefix地址/掩码(用Preferenced Link State ID和源路由ID关联了T1的拓朴),区域内传播,本质是关联T1、T2的 RID,提供带掩码的“叶子”
三、一个hub-spoke的例子:
由于 ospfv3 可以在配置多进程,我们可以在一个接口下起用多个ospfv3进程,与不同的路由器建立邻居关系,可以用这个特性,来完成 hub-spoke 的功能配置,拓扑如下:
1. 配置过程如下:
a、全局起 ipv6,配置接口 IPv6 地址,在 R3 上另起一个 loopback 地址,充当业务地址
b、R2、R3 起 ospfv3,配置 router-id,并在接口下配置 ospfv3 进程、区域、instance 号
c、R1 起 ospfv3,配置 router-id,并在接口下配置 ospfv3 进程、区域、和两个 spoke 相同的两个 instance 号,保证自己的优先级为 DR
d、R1 上的两个进程互相引入,在 R1 上实现在 hub 上的两个 spoke 路由互通
2. 全部配置如下:
[R1]:
ipv6
#
ospfv3 1
router-id 1.1.1.1
import-route ospfv3 2
#
ospfv3 2
router-id 1.1.1.1
import-route ospfv3 1
#
interface GigabitEthernet0/0/0
ipv6 enable
ipv6 address 2001::10:1:13:1/125
ipv6 address 2001::10:1:12:1/125
ipv6 address FE80::1 link-local
ospfv3 1 area 0.0.0.0 instance 12
ospfv3 dr-priority 255 instance 12
ospfv3 2 area 0.0.0.0 instance 13
ospfv3 dr-priority 255 instance 13
#
[R2]:
ipv6
#
ospfv3 1
router-id 2.2.2.2
#
interface GigabitEthernet0/0/0
ipv6 enable
ipv6 address 2001::A01:C02/64
ipv6 address FE80::2 link-local
ospfv3 1 area 0.0.0.0 instance 12
#
[R3]:
ipv6
#
ospfv3 1
router-id 3.3.3.3
import-route direct cost 20
#
interface GigabitEthernet0/0/0
ipv6 enable
ipv6 address 2001::10:1:13:3/125
ipv6 address 2001::10:1:12:2/125
ipv6 address FE80::3 link-local
ospfv3 1 area 0.0.0.0 instance 13
#
interface LoopBack0
ipv6 enable
ipv6 address 2001::33:3:3:3/128
#
3. 验证,从 R2 上 tracert ipv6 R3的业务地址:
五、常用命令:
ospfv3 1-65535 #起ospfv3进程
ospvv3 vpn-instance 1-31 #起ospfv3instance进程
route-id x.x.x.x #ospfv3进程下配置route-id
ospfv3 x area x | instance x #接口下配置ospfv3进程、区域、instance
dis ospfv3 peer
dis ospfv3 interface G0/0/0 #查看接口的ospfv6的Interface ID、ospfv6 instance ID
dis ospfv3 lsdb
dis ospfv3 lsdb router #查看T1 LSA
dis ospfv3 lsdb link #查看T8 LSA
dis ospfv3 lsdb intro-prefix | inter-prefix | inter-route #查看T9 LSA域内前缀|域间前缀|域间路由,
dis ospfv3 lsdb external #查看T5 LSA(外部引入)
dis ospfv3 routing
ospfv3 dr-priority x(0-255) | instance x #接口(进程下)指定DR优先级
tracert ipv6 x:x:x:x:x:x:x:x
lsa-forwarding-address standard | zero-translate #使能ipv6的FA功能
ip vpn-instance 1-31
ipv6-family