• 全部
  • 经验案例
  • 典型配置
  • 技术公告
  • FAQ
  • 漏洞说明
  • 全部
  • 全部
  • 大数据引擎
  • 知了引擎
产品线
搜索
取消
案例类型
发布者
是否解决
是否官方
时间
搜索引擎
匹配模式
高级搜索

某局点S6900交换机ospf默认路由学习错误问题

2022-09-07 发表
  • 0关注
  • 0收藏 895浏览
粉丝:0人 关注:1人

组网及说明


现场组网如上,EOR1分别与CEEOR2建立ospf邻居

问题描述

现场EOR1分别与CEEOR2建立ospf多实例邻居,ospf进程为80,互联三层口分别为vlanif 4008RAGG100.3998。同时EOR1EOR2还通过vlanif1715建立进程号为81ospf多实例邻居,TOR做二层透传。ospf 80ospf 81处于同一个vpn实例内。FW发布一条O_ASE1默认路由给CECE再将这条路由发布给EOR1EOR1再继续发布给EOR2,正常情况下,EOR1EOR2上的路由学习如下:

< EOR01>display ip routing-table vpn-instance M2M

Destinations : 508      Routes : 2349

Destination/Mask   Proto   Pre Cost        NextHop         Interface

0.0.0.0/0          O_ASE1  150 10150       10.215.5.169    Vlan4008 (与CE的互联接口)

< EOR02>display ip routing-table vpn-instance M2M

Destinations : 508      Routes : 2373

Destination/Mask   Proto   Pre Cost        NextHop         Interface

0.0.0.0/0          O_ASE1  150 10151       10.215.5.185    RAGG100.3998 (与EOR1的互联接口)

但是故障时候查看EOR1上的默认路由是通过EOR2ospf 81学到的,下一跳指向EOR2且路由类型为第二类外部路由, EOR2上路由学习则是正常的,因此导致路由环路,如下:

< EOR01>display ip routing-table vpn-instance M2M

Destinations : 508      Routes : 2373

Destination/Mask   Proto   Pre Cost        NextHop         Interface

0.0.0.0/0          O_ASE2  150 1           192.168.252.114 Vlan1715 (与EOR1的直连地址,中间经过了二层TOR

< EOR02>display ip routing-table vpn-instance M2M

Destinations : 508      Routes : 2373

Destination/Mask   Proto   Pre Cost        NextHop         Interface

0.0.0.0/0          O_ASE1  150 10151       10.215.5.185    RAGG100.3998 (与EOR1的互联接口)

后面客户通过手动添加和删除指向CE的默认路由恢复故障。

 

过程分析

1.查看路由的详细信息,发现CE发的O_ASE1已经加入路由表,但是处于未激活状态。

[EOR1]dis ip routing-table vpn-instance M2M 0.0.0.0 verbose

Summary count : 4

Destination: 0.0.0.0/0
   Protocol: O_ASE2
 Process ID: 81
  SubProtID: 0x8                    Age: 01h02m11s
       Cost: 1               Preference: 150
      IpPre: N/A             QosLocalID: N/A
        Tag: 1                    State: Active Adv
  OrigTblID: 0x0                OrigVrf: default-vrf
    TableID: 0x102               OrigAs: 0
      NibID: 0x1300000b          LastAs: 0
     AttrID: 0xffffffff        Neighbor: 0.0.0.0
      Flags: 0x10041        OrigNextHop: 192.168.252.114
      Label: NULL           RealNextHop: 192.168.252.114
    BkLabel: NULL             BkNextHop: N/A
  Tunnel ID: Invalid          Interface: Vlan-interface1715
BkTunnel ID: Invalid        BkInterface: N/A
   FtnIndex: 0x0           TrafficIndex: N/A
  Connector: N/A                 PathID: 0x0

Destination: 0.0.0.0/0
   Protocol: O_ASE1
 Process ID: 80
  SubProtID: 0x4                    Age: 01h02m11s
       Cost: 51              Preference: 150
      IpPre: N/A             QosLocalID: N/A
        Tag: 1                    State: Inactive Adv
  OrigTblID: 0x0                OrigVrf: default-vrf
    TableID: 0x102               OrigAs: 0
      NibID: 0x13000007          LastAs: 0
     AttrID: 0xffffffff        Neighbor: 0.0.0.0
      Flags: 0x41           OrigNextHop: 10.215.5.169
      Label: NULL           RealNextHop: 10.215.5.169
    BkLabel: NULL             BkNextHop: N/A
  Tunnel ID: Invalid          Interface: Vlan-interface4008
BkTunnel ID: Invalid        BkInterface: N/A
   FtnIndex: 0x0           TrafficIndex: N/A
  Connector: N/A                 PathID: 0x0

 

2. 根据ospf选路规则O_ASE1的优先级大于O_ASE2,为什么O_ASE2加入了路由表且处于激活状态并最终显示在了vpn路由表里呢?客户这边反馈故障时候FW侧发生了短时间路由震荡,时间和我们设备O_ASE1路由明细中显示的路由存活时间相对应,也就是说O_ASE1故障时候短暂消失过。查看EOR1EOR2上的配置发现ospf 81均配置了default-route-advertise的命令。

ospf 81 router-id 192.168.249.232 vpn-instance M2M_

default-route-advertise  发布type2的默认路由

import-route direct

import-route static

vpn-instance-capability simple

area 0.0.0.0

这个命令的作用是在当前vpn路由表里面存在默认路由的情况下会引入并发布该默认路由,也就是说EOR1EOR2均会将本地vpn路由表里的默认路由通过ospf 81O_ASE2的形式互相发给对方。如下:

<H3C S6900-54QF-F-JN4F-EOR01>dis ospf 81 ls ase 0.0.0.0

 

         OSPF Process 81 with Router ID 192.168.249.232

                 Link State Database

 

    Type      : External

    LS ID     : 0.0.0.0

    Adv Rtr   : 192.168.249.232  这个是本地发布的

    LS age    : 880

    Len       : 36

    Options   : O E

    Seq#      : 8000005d

    Checksum  : 0x2bbc

    Net mask  : 0.0.0.0

    MTID   0 Metric   : 1

    E Type            : 2

    Forwarding Address: 0.0.0.0

    Tag               : 1

 

    Type      : External

    LS ID     : 0.0.0.0

    Adv Rtr   : 192.168.249.242  EOR2发布的    发布源

    LS age    : 881

    Len       : 36

    Options   : O E

    Seq#      : 8000135d

    Checksum  : 0xb515

    Net mask  : 0.0.0.0

    MTID   0 Metric   : 1

    E Type            : 2                  ---------------------这里  type

    Forwarding Address: 0.0.0.0

    Tag               : 1

 

故障时由于发布端默认路由震荡,EOR1上收到的O_ASE1路由删除,也撤销了发布的O_ASE2路由,但EOR2处于下游,对这个路由震荡感知有延时,如果震荡很快的话,EOR12次计算,先删再加,而EOR2是将这两次计算合并到一次计算,相当于没有感知到这次震荡,EOR2上默认路由就不会变,依然会发送O_ASE2默认路由给EOR1,导致EOR1本地vpn路由表里没有默认路由的情况下将EOR2发布的O_ASE2默认路由加入了路由表里。而后续EOR1又可以重新学习到type 1的默认路由并且加表,由于路由管理计算路由比较时只比较路由的优先级 和costtype1 type2的优先级相同都是150  但是type 1的路由cost 比较大, 所以type1的路由会处于未激活状态。

3.为什么现场增加和删除静态路由后就恢复正常了呢?这是因为配置静态路由后, ospf 81 配置了default-route-advertise就可以再次发布默认路由,未配置permit-calculate-other 参数,本地发布默认路由后则不会再计算其他默认路由,所以会删掉 EOR2发布的默认路由,而CE是通过ospf80EOR1建立邻居的,ospf80未配置default-route-advertise,所以不受影响,依然存在于路由管理表里面,处于未激活状态。这个时候路由管理表里面只剩下静态默认路由和CE发的type1路由,这时候再删除静态路由后,路由管理表里面就只有CE发布的type1路由了,所以就将这个type1路由加表,故障恢复。

[EOR1]dis ip routing-table vpn-instance M2M_Gi_GGSN 0.0.0.0 verbose

Summary count : 3

Destination: 0.0.0.0/0
   Protocol: Static
 Process ID: 0
  SubProtID: 0x1                    Age: 00h00m15s
       Cost: 0               Preference: 60
      IpPre: N/A             QosLocalID: N/A
        Tag: 0                    State: Active Adv
  OrigTblID: 0x0                OrigVrf: default-vrf
    TableID: 0x102               OrigAs: 0
      NibID: 0x11000000          LastAs: 0
     AttrID: 0xffffffff        Neighbor: 0.0.0.0
      Flags: 0x10060        OrigNextHop: 10.215.5.169
      Label: NULL           RealNextHop: 10.215.5.169
    BkLabel: NULL             BkNextHop: N/A
  Tunnel ID: Invalid          Interface: Vlan-interface4008
BkTunnel ID: Invalid        BkInterface: N/A
   FtnIndex: 0x0           TrafficIndex: N/A
  Connector: N/A                 PathID: 0x0

Destination: 0.0.0.0/0
   Protocol: O_ASE1
 Process ID: 80
  SubProtID: 0x4                    Age: 00h11m26s
       Cost: 51              Preference: 150
      IpPre: N/A             QosLocalID: N/A
        Tag: 1                    State: Inactive Adv
  OrigTblID: 0x0                OrigVrf: default-vrf
    TableID: 0x102               OrigAs: 0
      NibID: 0x13000007          LastAs: 0
     AttrID: 0xffffffff        Neighbor: 0.0.0.0
      Flags: 0x41           OrigNextHop: 10.215.5.169
      Label: NULL           RealNextHop: 10.215.5.169
    BkLabel: NULL             BkNextHop: N/A
  Tunnel ID: Invalid          Interface: Vlan-interface4008
BkTunnel ID: Invalid        BkInterface: N/A
   FtnIndex: 0x0           TrafficIndex: N/A
  Connector: N/A                 PathID: 0x0

解决方法

建议将EOR2 ospf 80的路由优先级:preference ase 149,修改为低于默认的150。以避免路由震荡导致EOR2的默认路由异常。

该案例对您是否有帮助:

您的评价:1

若您有关于案例的建议,请反馈:

作者在2022-10-09对此案例进行了修订
0 个评论

该案例暂时没有网友评论

编辑评论

举报

×

侵犯我的权益 >
对根叔知了社区有害的内容 >
辱骂、歧视、挑衅等(不友善)

侵犯我的权益

×

泄露了我的隐私 >
侵犯了我企业的权益 >
抄袭了我的内容 >
诽谤我 >
辱骂、歧视、挑衅等(不友善)
骚扰我

泄露了我的隐私

×

您好,当您发现根叔知了上有泄漏您隐私的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您认为哪些内容泄露了您的隐私?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)

侵犯了我企业的权益

×

您好,当您发现根叔知了上有关于您企业的造谣与诽谤、商业侵权等内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到 pub.zhiliao@h3c.com 邮箱,我们会在审核后尽快给您答复。
  • 1. 您举报的内容是什么?(请在邮件中列出您举报的内容和链接地址)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
  • 3. 是哪家企业?(营业执照,单位登记证明等证件)
  • 4. 您与该企业的关系是?(您是企业法人或被授权人,需提供企业委托授权书)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

抄袭了我的内容

×

原文链接或出处

诽谤我

×

您好,当您发现根叔知了上有诽谤您的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您举报的内容以及侵犯了您什么权益?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

对根叔知了社区有害的内容

×

垃圾广告信息
色情、暴力、血腥等违反法律法规的内容
政治敏感
不规范转载 >
辱骂、歧视、挑衅等(不友善)
骚扰我
诱导投票

不规范转载

×

举报说明

提出建议

    +

亲~登录后才可以操作哦!

确定

亲~检测到您登陆的账号未在http://hclhub.h3c.com进行注册

注册后可访问此模块

跳转hclhub

你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作