属性概述
类型
可选非过渡
作用
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 时,表示为缺省路由;