BGP-LS entry 解析

BGP-LS(Link-State)是通过BGP协议来传递IGP链路状态的一种BGP多协议扩展,通过BGP-LS,可以很容易获取到多IGP域的相关拓扑信息。常见的链路状态协议就两种: OSPF和ISIS。

当前各厂商主流路由器和三层交换机都支持BGP-LS。

LAB拓扑

在这里插入图片描述

关键配置如下(229这台路由器)

bgp 2000
 router-id 1.1.1.1
 peer 12.0.0.230  as-number 2000
 peer 192.168.200.141 as-number 2000
 peer 192.168.200.141 connect-interface M-GigabitEthernet0/0/0
#
 address-family link-state
  peer 12.0.0.230  enable
  peer 192.168.200.141  enable
  peer 192.168.200.141 reflect-client
  //将link-state发往SDN控制器200.141

ospf 1 router-id 1.1.1.1
 distribute bgp-ls
 // 将OSPF 的 LSDB 信息传递给 BGP link-state address-family
 area 0.0.0.0
  network 11.11.11.11 0.0.0.0
  network 12.0.0.0 0.0.0.255
  

229 查看 OSPF 的RIB

show ospf routing

         OSPF Process 1 with Router ID 1.1.1.1
                  Routing Table

                Topology base (MTID 0)

 Routing for network
 Destination        Cost     Type    NextHop         AdvRouter       Area
 23.0.0.0/24        2        Transit 12.0.0.230      2.2.2.2         0.0.0.0
 33.33.33.33/32     3        Stub    12.0.0.230      3.3.3.3         0.0.0.0
 11.11.11.11/32     0        Stub    0.0.0.0         1.1.1.1         0.0.0.0
 2.2.2.230/32       1        Stub    12.0.0.230      2.2.2.2         0.0.0.0
 12.0.0.0/24        1        Transit 0.0.0.0         2.2.2.2         0.0.0.0

 Total nets: 5
 Intra area: 5  Inter area: 0  ASE: 0  NSSA: 0
 

或者 show ip routing-table protocol ospf

Summary count : 5

OSPF Routing table status : <Active>
Summary count : 3

Destination/Mask   Proto   Pre Cost        NextHop         Interface
2.2.2.230/32       O_INTRA 10  1           12.0.0.230      Vlan229
23.0.0.0/24        O_INTRA 10  2           12.0.0.230      Vlan229
33.33.33.33/32     O_INTRA 10  3           12.0.0.230      Vlan229

//下面的几条inactive状态是因为它们是本地直连路由,直连路由比OSFP路由优先级更高。
OSPF Routing table status : <Inactive>
Summary count : 2

Destination/Mask   Proto   Pre Cost        NextHop         Interface
11.11.11.11/32     O_INTRA 10  0           0.0.0.0         Loop2
12.0.0.0/24        O_INTRA 10  1           0.0.0.0         Vlan229

229 查看 OSPF 的LSDB

show ospf lsdb

         OSPF Process 1 with Router ID 1.1.1.1
                 Link State Database

                         Area: 0.0.0.0
 Type      LinkState ID    AdvRouter       Age  Len   Sequence  Metric
 Router    3.3.3.3         3.3.3.3         1165 48    800000B1  0
 Router    1.1.1.1         1.1.1.1         1569 48    8000002C  0
 Router    2.2.2.2         2.2.2.2         1570 60    800000F9  0
 Network   23.0.0.2        2.2.2.2         570  32    80000031  0
 Network   12.0.0.230      2.2.2.2         1564 32    80000002  0

229 查看BGP-LS entry 信息:

show bgp link-state 展示很多信息,下面依次进行介绍

Total number of routes: 16
//bgp link-state entry 的数量为16

BGP local router ID is 1.1.1.1
Status codes: * - valid, > - best, d - dampened, h - history
              s - suppressed, S - stale, i - internal, e - external
              a - additional-path
      Origin: i - IGP, e - EGP, ? - incomplete
Prefix codes: E link, V node, T IP reachable route, u/U unknown,
              I Identifier, N local node, R remote node, L link, P prefix,
              L1/L2 ISIS level-1/level-2, O OSPF, D direct, S static,
              a area-ID, l link-ID, t topology-ID, s ISO-ID,
              c confed-ID/ASN, b bgp-identifier, r router-ID,
              i if-address, n peer-address, o OSPF Route-type, p IP-prefix
              d designated router address

BGP-LS 的前缀代码 Prefix codes

在BGP-LS协议中存在对应Node、Link、Prefix三种NLRI封装格式和其它链路状态相关的属性值。这三种NLRI分别携带网络节点信息、链路信息和前缀信息。

就本次实验而言,介绍几个常用的:

Prefix codes含义
Elink
Vnode
Nlocal node
RR remote node
pIP-prefix
rrouter-ID
aarea-ID
ddesignated router address 。DR 是OSPF中路由器的重要角色
bbgp-identifier
TIP reachable route ,可达的有效路由前缀
iif-address 。表示接口地址, 用在Link entry 中,表示链路的起点
npeer-address 。对端地址,用在Link entry 中,表示链路的终点
show bgp link-state还会看到很多link-state entry

首先介绍5条 [V] 开头的 Node entry:
前三条代表拓扑图中的三台路由器。后两条指出谁是 OSPF 中的 DR 路由器(d 标志)。

双层中括号中的信息,比如 [N[c2000][b1.1.1.1][a0.0.0.0][r1.1.1.1]] 描述一个节点的信息。

* >  Network : [V][O][I0x0][N[c2000][b1.1.1.1][a0.0.0.0][r1.1.1.1]]/376
     NextHop : 0.0.0.0                                  LocPrf    :
     PrefVal : 32768                                    OutLabel  : NULL
     MED     :                                          i
 
* >  Network : [V][O][I0x0][N[c2000][b1.1.1.1][a0.0.0.0][r2.2.2.2]]/376
     NextHop : 0.0.0.0                                  LocPrf    :
     PrefVal : 32768                                    OutLabel  : NULL
     MED     :                                          i
 
* >  Network : [V][O][I0x0][N[c2000][b1.1.1.1][a0.0.0.0][r3.3.3.3]]/376
     NextHop : 0.0.0.0                                  LocPrf    :
     PrefVal : 32768                                    OutLabel  : NULL
     MED     :                                          i
* >  Network : [V][O][I0x0][N[c2000][b1.1.1.1][a0.0.0.0][r1.1.1.1d12.0.0.229]]/408
     NextHop : 0.0.0.0                                  LocPrf    :
     PrefVal : 32768                                    OutLabel  : NULL
     MED     :                                          i
 
* >  Network : [V][O][I0x0][N[c2000][b1.1.1.1][a0.0.0.0][r2.2.2.2d23.0.0.2]]/408
     NextHop : 0.0.0.0                                  LocPrf    :
     PrefVal : 32768                                    OutLabel  : NULL
     MED     :                                          i

[E] 开头的代表 Link entry:

双层中括号中的信息,比如 [L[i12.0.0.229][n12.0.0.229]] 描述了一条链路。

i 表示接口地址,i12.0.0.229表示链路的起点;
n 表示接口地址,n12.0.0.229 表示这条链路的终点。

* >  Network : [E][O][I0x0][N[c2000][b1.1.1.1][a0.0.0.0][r1.1.1.1]][R[c2000][b1.1.1.1][a0.0.0.0][r1.1.1.1d12.0.0.229]][L[i12.0.0.229][n12.0.0.229]]/824
     NextHop : 0.0.0.0                                  LocPrf    :
     PrefVal : 32768                                    OutLabel  : NULL
     MED     :                                          i
 
* >  Network : [E][O][I0x0][N[c2000][b1.1.1.1][a0.0.0.0][r2.2.2.2]][R[c2000][b1.1.1.1][a0.0.0.0][r1.1.1.1d12.0.0.229]][L[i12.0.0.230][n12.0.0.229]]/824
     NextHop : 0.0.0.0                                  LocPrf    :
     PrefVal : 32768                                    OutLabel  : NULL
     MED     :                                          i
 
* >  Network : [E][O][I0x0][N[c2000][b1.1.1.1][a0.0.0.0][r2.2.2.2]][R[c2000][b1.1.1.1][a0.0.0.0][r2.2.2.2d23.0.0.2]][L[i23.0.0.2][n23.0.0.2]]/824
     NextHop : 0.0.0.0                                  LocPrf    :
     PrefVal : 32768                                    OutLabel  : NULL
     MED     :                                          i
 
* >  Network : [E][O][I0x0][N[c2000][b1.1.1.1][a0.0.0.0][r3.3.3.3]][R[c2000][b1.1.1.1][a0.0.0.0][r2.2.2.2d23.0.0.2]][L[i23.0.0.234][n23.0.0.2]]/824
     NextHop : 0.0.0.0                                  LocPrf    :
     PrefVal : 32768                                    OutLabel  : NULL
     MED     :                                          i
 
* >  Network : [E][O][I0x0][N[c2000][b1.1.1.1][a0.0.0.0][r1.1.1.1d12.0.0.229]][R[c2000][b1.1.1.1][a0.0.0.0][r1.1.1.1]][L[i12.0.0.229][n12.0.0.229]]/824
     NextHop : 0.0.0.0                                  LocPrf    :
     PrefVal : 32768                                    OutLabel  : NULL
     MED     :                                          i
 
* >  Network : [E][O][I0x0][N[c2000][b1.1.1.1][a0.0.0.0][r1.1.1.1d12.0.0.229]][R[c2000][b1.1.1.1][a0.0.0.0][r2.2.2.2]][L[i12.0.0.229][n12.0.0.230]]/824
     NextHop : 0.0.0.0                                  LocPrf    :
     PrefVal : 32768                                    OutLabel  : NULL
     MED     :                                          i
 
* >  Network : [E][O][I0x0][N[c2000][b1.1.1.1][a0.0.0.0][r2.2.2.2d23.0.0.2]][R[c2000][b1.1.1.1][a0.0.0.0][r2.2.2.2]][L[i23.0.0.2][n23.0.0.2]]/824
     NextHop : 0.0.0.0                                  LocPrf    :
     PrefVal : 32768                                    OutLabel  : NULL
     MED     :                                          i
 
* >  Network : [E][O][I0x0][N[c2000][b1.1.1.1][a0.0.0.0][r2.2.2.2d23.0.0.2]][R[c2000][b1.1.1.1][a0.0.0.0][r3.3.3.3]][L[i23.0.0.2][n23.0.0.234]]/824
     NextHop : 0.0.0.0                                  LocPrf    :
     PrefVal : 32768                                    OutLabel  : NULL
     MED     :                                          i
     

[T] 开头的代表 有效的 路由前缀 entry
这几条分别代表拓扑图中的3个loopback 网络:

* >  Network : [T][O][I0x0][N[c2000][b1.1.1.1][a0.0.0.0][r1.1.1.1]][P[o0x01][p11.11.11.11/32]]/488
     NextHop : 0.0.0.0                                  LocPrf    :
     PrefVal : 32768                                    OutLabel  : NULL
     MED     :                                          i
 
* >  Network : [T][O][I0x0][N[c2000][b1.1.1.1][a0.0.0.0][r2.2.2.2]][P[o0x01][p2.2.2.230/32]]/488
     NextHop : 0.0.0.0                                  LocPrf    :
     PrefVal : 32768                                    OutLabel  : NULL
     MED     :                                          i
 
* >  Network : [T][O][I0x0][N[c2000][b1.1.1.1][a0.0.0.0][r3.3.3.3]][P[o0x01][p33.33.33.33/32]]/488
     NextHop : 0.0.0.0                                  LocPrf    :
     PrefVal : 32768                                    OutLabel  : NULL
     MED     :                                          i

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值