「MP-BGP」- Path Attribute / MP-REACH-NLRI

  CREATED BY JENKINSBOT

属性概述

类型

可选非过渡

作用

MP_REACH_NLRI 被携带于 BGP Update 报文中,有以下作用:
1)通告可达的 Route 给 BGP 邻居;
2)通告可达路的路由的 Next-Hop 给 BGP 邻居;

演示

通过配置,建立 IPv6 BGP 关系

[Huawei] ipv6
[Interface] ipv6 enable
[Interface] ipv6 address 2011::1 64

[bgp] peer 2011::2 as-number 200
[bgp] ipv6-family unicast
[bgp]-ipv6] peer 2011::2 enable
[bgp]-ipv6] network 2011::/64

然后,抓包观察:

Frame 1: 163 bytes on wire (1304 bits), 163 bytes captured (1304 bits) on interface -, id 0
Ethernet II, Src: HuaweiTe_2e:4a:35 (00:e0:fc:2e:4a:35), Dst: HuaweiTe_0b:50:b5 (00:e0:fc:0b:50:b5)
Internet Protocol Version 6, Src: 2011::1, Dst: 2011::2
Transmission Control Protocol, Src Port: 49152, Dst Port: 179, Seq: 1, Ack: 1, Len: 77
Border Gateway Protocol - UPDATE Message
    Marker: ffffffffffffffffffffffffffffffff
    Length: 77
    Type: UPDATE Message (2)
    Withdrawn Routes Length: 0
    Total Path Attribute Length: 54
    Path attributes
        Path Attribute - ORIGIN: IGP
        Path Attribute - AS_PATH: 200
        Path Attribute - MULTI_EXIT_DISC: 0
        Path Attribute - MP_REACH_NLRI
            Flags: 0x90, Optional, Extended-Length, Non-transitive, Complete
            Type Code: MP_REACH_NLRI (14)
            Length: 30
            Address family identifier (AFI): IPv6 (2)
            Subsequent address family identifier (SAFI): Unicast (1)
            Next hop network address (16 bytes)
                Next Hop: 2011::1
            Number of Subnetwork points of attachment (SNPA): 0
            Network layer reachability information (9 bytes)
                2011::/64

报文格式

整体结构(分为 3 部分)

MP_REACH_NLRI 用于发布可达路由及下一跳信息。该属性由一个或多个三元组<地址族信息、下一跳信息、网络可达性信息>组成,格式如下:

1)地址族信息(Address Family Information)域:由 2 字节的地址族标识 AFI(Address Family Identifier)和 1 字节的子地址族标识 SAFI(Subsequent Address Family Identifier)组成;
AFI 标识网络层协议,对应 RFC3232 的“Address Family Number”所定义的地址族值。例如 IPv4 的值是 1,IPv6 的值是 2;SAFI 表示 NLRI 的类型。AFI 值为 1,SAFI 值为 128 表示 NLRI 中的地址为 MPLS-labeled VPN-IPv4 地址;

2)下一跳信息(Next Hop Network Address Information)域:由两部分组成,一字节的下一跳网络地址长度,可变长度的下一跳网络地址组;

3)网络层可达性信息(NLRI)域:由一个或多个三元组<长度、标签、前缀>组成,该部分内容将在后面的课程里详细介绍;

字段细节

Address Family Identifier,AFI(2 octets),该字段标识网络层协议;
MP-BGP 支持的地址族有:IPv4 单播地址族;IPv4 组播地址族;IPv6 单播地址族;VPNv4 地址族;VPNv6 地址族;……
MP-BGP 采用 AFI 来区分不同的网络层协议。例如 AFI=2 表示 IPv6;
要在 BGP Peer 间交互不同类型的路由信息,则需要在正确的 AFI View 下激活对等体,以及发布 BGP 路由;IPv4 网络的邻居需要在 IPv4 单播地址族中使能,而 IPv6 网络邻居则需要在 IPv6 单播地址族中使能;

Subsequent Address Family Identifier,SAFI(1 octet);
SAFI 字段中 1 表示单播,2 表示组播,值由 IANA 分配,其分配原则被定义于 RFC2434;
该字段与 AFI 共同使用,例如 SAFI=1 表示 unicast,结合 AFI=2 表示 IPv6 单播;
EVPN 的 AFI 为 25(L2VPN),SAFI 为 70(EVPN);

Address Family Information = AFI + SAFI,通常是这两个字段的总称;

Length of Next Hop Network Address(1 octet),该字段表示下一跳地址的长度;通常情况下为 16;

Network Address of Next Hop(variable),该字段为此下一跳地址,格式由 AF 和 SAFI 决定;
在 IPv6 中,一般情况下为全球单播地址;

Reserved(1 octet),必须为 0 ;

Network Layer Reachability Information(variable),该字段变长可包含可达的路由
表示含有匹配相同属性的路由信息。当此字段为 0 时,表示为缺省路由;