一、OSPF的基本功能

在同一区域内配置多台交换机时,大多数的配置数据(如定时器、过滤、聚合等)都应该以区域为单位进行统一规划。错误的配置可能会导致相邻交换机之间无法相互传递信息,甚至导致路由信息的阻塞或者自环。

在接口视图下配置的OSPF命令不受OSPF是否使能的限制。在关闭OSPF后,原来在接口下配置的相关命令仍然存在。

1OSPF进程、路由ID配置

[Huawei]ospf 1 router-id 1.1.1.1vpn-instance  testospf

 

交换机支持OSPF多进程,可以根据业务类型划分不同的进程。进程号是本地概念,不影响与其它交换机之间的报文交换。因此,不同的交换机之间,即使进程号不同也可以进行报文交换。

一台交换机如果要运行OSPF协议,必须存在Router ID。交换机的Router ID是一个32比特无符号整数,是一台交换机在自治系统中的唯一标识。为保证OSPF运行的稳定性,在进行网络规划时应该确定Router ID的划分并手工配置。

缺省情况下,交换机系统会从当前接口的IP地址中自动选取一个最大值作为Router ID。手动配置Router ID时,必须保证自治系统中任意两台Router ID都不相同。通常的做法是将Router ID配置为与该设备某个接口的IP地址一致。

每个OSPF进程的Router ID要保证在OSPF网络中唯一,否则会导致邻居不能正常建立、路由信息不正确的问题。建议在OSPF设备上单独为每个OSPF进程配置全网唯一的Router ID。

如果指定了×××实例,那么此OSPF进程属于指定的×××实例,如果未指定则属于公网实例。

 

2ospf区域配置

[Huawei]ospf 1

[Huawei-ospf-1]area 1

[Huawei-ospf-1-area-0.0.0.1]

 

随着网络规模日益扩大,设备数量的增多会导致LSDB非常庞大,导致设备负担很重。

OSPF协议通过将自治系统划分成不同的区域(Area)来解决上述问题。区域是从逻辑上将设备划分为不同的组,每个组用区域号(AreaID)来标识。

区域的边界是设备,而不是链路(is-is边界是链路)。一个网段(链路)只能属于一个区域,或者说每个运行OSPF的接口必须指明属于哪一个区域。

并非所有的区域都是平等的关系。其中区域号(Area ID)是0的称为骨干区域。骨干区域负责区域之间的路由,非骨干区域之间的路由信息必须通过骨干区域来转发。

 

3ospf网络通告(使能ospf

[Huawei-ospf-1-area-0.0.0.1]network10.1.1.0 0.0.0.255         #区域中使能

[Huawei-GigabitEthernet0/0/2]ospf enable 1(ospf进程) area 1  #接口下使能ospf

 

创建OSPF进程后,还需要配置区域所包含的网段。

一个网段只能属于一个区域,或者说每个运行OSPF协议的接口必须指明属于某一个特定的区域。该处的网段是指运行OSPF协议接口的IP地址所在的网段。

OSPF需要对接收到的Hello报文做网络掩码检查,当接收到的Hello报文中携带的网络掩码和本设备不一致时,则丢弃这个Hello报文,即不能建立邻居关系。

缺省情况下,OSPF以32位主机路由的方式对外发布Loopback接口的IP地址,与Loopback接口上配置的掩码长度无关。

如果要发布Loopback接口的网段路由,需要在该接口下配置(ospf network-type[broadcast|nbma])网络类型为NBMA或广播型(。

区域ID可以采用十进制整数或IPv4地址形式输入,但显示时使用IPv4地址形式。

 

4ospf虚连接配置(可选)

[Huawei-ospf-1]area 2

[Huawei-ospf-1-area-0.0.0.2]vlink-peer0.0.0.1

 

具体配置为在中间穿越虚连接两端连接骨干区域和普通区域或分离的骨干区域的ABR对应区域视图下分别指定对端的路由器ID即可(可参考后面的配置示例),其他各种参数都有默认设置。

在划分OSPF区域之后,非骨干区域之间的OSPF路由更新是通过骨干区域来交换完成的。因此,OSPF要求所有非骨干区域必须与骨干区域保持连通,并且骨干区域之间也要保持连通。

但在实际应用中,因为各方面条件的限制,可能无法满足这个要求,这时可以通过配置OSPF虚连接解决。

建立虚连接后,不同的设备制造商可能会使用不同的MTU(maximum transmission unit)缺省设置。为了保证一致,应该设置接口发送DD报文时MTU值为缺省值0。

 

5、LSA泛洪限制配置(可选)

[Huawei-ospf-1]flooding-control number 30 timer-interval30

 

当邻居数量或者需要泛洪的LSA报文数量较多时,邻居路由器会在短时间内收到大量的更新报文。如果邻居路由器不能及时处理这些突发的大量报文,则有可能因为忙于处理更新报文而丢弃了维护邻居关系的Hello报文,造成邻居断开。

而重建邻居时,需要交互的报文数量将会更大,由此导致报文数量过大的情况进一步恶化。通过对OSPF更新LSA的泛洪限制可以有效避免以上情况的发生,起到了维护邻居关系的目的。

缺省情况下,每次泛洪更新LSA的数量的缺省值是50,泛洪更新LSA的时间间隔是30秒。

配置flooding-control命令后,控制对OSPF更新LSA的泛洪的这个功能立刻生效。

若没有配置flooding-control命令,当邻居数量超过256个时自动使能该功能。

 

 

二、ospf的高级功能

1、设置ospf报文重传限制次数(可选,默认30)

 [Huawei-ospf-1]retransmission-limit ?

                       INTEGER<2-255>  The Number of Retransmission Limitation

                       <cr>            Please press ENTER to executecommand

 

OSPF交换机发送完以下这三种(DD报文、LSU报文、LSR报文)报文后,若没有在规定时间内收到相应的LSAck报文,会再次重传。当达到限定报文重传次数后,本端就断开和对方的邻接关系。

缺省情况下,不使能此功能。最大重传限制数的缺省值是30。

 

2、设置在DD报文中填充接口的实际MTU

[Huawei-GigabitEthernet0/0/2]ospfmtu-enable

 

建立虚连接后,不同的设备制造商可能会使用不同的MTU缺省设置。为了保证一致,应该设置接口发送DD报文时MTU值为缺省值0。

缺省情况下,接口发送DD报文的MTU值为0。

设置此命令后,系统会自动重启ospf进程,会使邻居关系重新建立。通常不建议修改。

 

3、设置接口的OSPF网络类型

[Huawei-GigabitEthernet0/0/2]ospfnetwork-type ?

  broadcast Specify OSPF broadcast network

  nbma      Specify OSPF NBMA network

  p2mp      Specify OSPF point-to-multipoint network

  p2p       Specify OSPF point-to-point network

 

下面三种情况是配置接口的OSPF网络类型的最常见情况:

1、P2MP网络类型:

由于P2MP不存在于链路层协议中,所以P2MP都是由其他网络类型强制更改的。

2、NBMA网络类型:

由于NBMA网络必须是全连通的,所以网络中任意两台交换机之间都必须直接可达。但在很多情况下,这个要求无法满足,这时就需要通过命令强制改变网络的类型。

3、广播网络类型:

为了提高建立邻居速度,可以将广播类型网络更改为P2P网络。

 

缺省情况下,接口的网络类型根据物理接口而定。以太网接口的网络类型为广播。

当用户为接口配置了新的网络类型后,原接口的网络类型将被替换。

根据实际情况配置接口的网络类型,例如:

1、如果接口的网络类型是广播,但在广播网络上有不支持组播地址的交换机,可以将接口的网络类型改为NBMA网络。

2、如果接口的网络类型是NBMA,且网络是全连通的,即任意两台交换机都直接可达。此时,可以将接口类型改为广播网络,并且不必再配置邻居路由器。

3、如果接口的网络类型是NBMA,但网络不是全连通的,必须将接口的网络类型改为P2MP。这样,两台不能直接可达的交换机就可以通过一台与两者都直接可达的交换机来交换路由信息。接口的网络类型改为P2MP网络后,不必再配置邻居交换机。

4、如果同一网段内只有两台交换机运行OSPF协议,建议将接口的网络类型改为P2P网络。

 

OSPF协议不支持NULL接口的配置。

 

4、配置P2MP网络属性

[Huawei-GigabitEthernet0/0/2]ospfnetwork-type p2mp

[Huawei-GigabitEthernet0/0/2]ospfp2mp-mask-ignore      #忽略对网络掩码的检查。

[Huawei-ospf-10]filter-lsa-out peer10.1.1.1 ?          #对发送的LSA进行过滤。

  all     Filter all types of LSAs #指定除grace-lsa 之外的所有lsa进行过滤

  ase     Filter type-5 ASE LSAs

                                            nssa    Filter type-7 NSSA LSAs

                                            summary Filter type-3 Summary LSAs

 

P2MP网络类型必须是由其他的网络类型强制更改的。

当两台交换机之间存在多条链路时,通过对出方向的LSA进行过滤可以在某些链路上过滤LSA的传送,减少不必要的重传,节省带宽资源。

缺省情况下,不对LSA进行过滤。

 

5、配置NBMA网络属性

[Huawei-GigabitEthernet0/0/2]ospfnetwork-type nbma

[Huawei-GigabitEthernet0/0/2]ospf timerpoll ?  # 发送轮询报文的时间间隔。

                               INTEGER<1-3600>  Second(s)

[Huawei-ospf-10]peer 10.1.1.1 dr-priority 2    # 配置NBMA网络的邻居。

 

由于NBMA网络必须是全连通的,所以网络中任意两台交换机之间都必须直接可达。但在很多情况下,这个要求无法满足,此时必须通过命令强制改变网络的类型为P2MP。

在NBMA网络上,当邻居失效后,交换机将按设置的轮询时间间隔定期地发送Hello报文。

网络类型为NBMA的接口,无法通过广播Hello报文的形式发现邻居交换机,必须在接口上手工配置邻居交换机的IP地址和邻居交换机是否有选举权。

在一个广播型ospf网络中,一旦选举了DR和BDR后,区域内路由器仅与DR、BDR交互LSA,DRother之间不需要交互LSA。

如果DR、BDR已经选择完毕,当一台新设备加入后,即使它的DR优先级值最大,也不会立即成为该网段中的DR,只有重启OSPF进程之后才会重新选举DR和BDR。