Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

BGP UPDATE (bgp_update)

  • レイヤ: アプリケーション・制御
  • ヘッダ: 可変長

下位レイヤからの到達

下位レイヤ判別フィールド値
bgptype2 (0x02)

フィールド

フィールド型既定値Auto説明
withdrawn_routes_lengthuint(16)withdrawn_routes のオクテット長撤回経路の長さ (オクテット、自動)。
withdrawn_routeslist<struct> — withdrawn_routes_length オクテット[]撤回する IPv4 経路 (ビット単位のプレフィックス長, プレフィックス)。
total_path_attribute_lengthuint(16)path_attributes のオクテット長パス属性の長さ (オクテット、自動)。
path_attributestlv — total_path_attribute_length オクテット3 要素パス属性 (フラグ + タイプコード。Extended Length フラグ付きなら長さは 16 ビットで、255 オクテットを超えると自動で付く)。
nlrilist<struct> — PDU の残りすべて1 要素広告する IPv4 経路 (ビット単位のプレフィックス長, プレフィックス)。他のファミリは MP_REACH_NLRI に入れる。

withdrawn_routes

各要素は以下のフィールドの組です。

フィールド型既定値Auto説明
lengthuint(8)
prefixbytes — (length + 7) / 8 オクテット

path_attributes

  • タイプ 16 ビット、長さ 8 ビット。
  • 長さは値の部分だけを数えます。
  • タイプのビット 0x1000 が立つと長さは 16 ビットになります。
  • 未知のタイプは値をオクテット列のまま保持します。
タイプ値名前値のフィールド説明
16385 (0x4001)originorigin
16386 (0x4002)as_pathsegments
16387 (0x4003)next_hopnext_hop
32772 (0x8004)multi_exit_discmed
16389 (0x4005)local_preflocal_pref
16390 (0x4006)atomic_aggregate
49159 (0xc007)aggregatorasn, address
49160 (0xc008)communitiesvalues
32782 (0x800e)mp_reach_ipv4_unicastafi, safi, next_hop_length, next_hop, reserved, nlri; 値が 00 01 01 で始まるとき
32782 (0x800e)mp_reach_ipv6_unicastafi, safi, next_hop_length, next_hop, reserved, nlri; 値が 00 02 01 で始まるとき
32782 (0x800e)mp_reach_vpnv4afi, safi, next_hop_length, next_hop, reserved, nlri; 値が 00 01 80 で始まるとき
32782 (0x800e)mp_reach_vpnv6afi, safi, next_hop_length, next_hop, reserved, nlri; 値が 00 02 80 で始まるとき
32782 (0x800e)mp_reach_evpnafi, safi, next_hop_length, next_hop, reserved, nlri; 値が 00 19 46 で始まるとき
32782 (0x800e)mp_reach_nlriafi, safi, next_hop_length, next_hop, reserved, nlri
32783 (0x800f)mp_unreach_ipv4_unicastafi, safi, withdrawn; 値が 00 01 01 で始まるとき
32783 (0x800f)mp_unreach_ipv6_unicastafi, safi, withdrawn; 値が 00 02 01 で始まるとき
32783 (0x800f)mp_unreach_vpnv4afi, safi, withdrawn; 値が 00 01 80 で始まるとき
32783 (0x800f)mp_unreach_vpnv6afi, safi, withdrawn; 値が 00 02 80 で始まるとき
32783 (0x800f)mp_unreach_evpnafi, safi, withdrawn; 値が 00 19 46 で始まるとき
32783 (0x800f)mp_unreach_nlriafi, safi, withdrawn
49168 (0xc010)extended_communitiesvalues
49184 (0xc020)large_communitiesvalues
49174 (0xc016)pmsi_tunnelflags, tunnel_type, mpls_label, tunnel_id

path_attributes › origin

フィールド型既定値Auto説明
originuint(8)

path_attributes › as_path

フィールド型既定値Auto説明
segmentslist<struct> — PDU の残りすべて
path_attributes › as_path › segments

各要素は以下のフィールドの組です。

フィールド型既定値Auto説明
segment_typeenum(8)
segment_lengthuint(8)
asnslist<uint(32)> — segment_length * 4 オクテット
path_attributes › as_path › segments › segment_type
値名前
1 (0x01)as_set
2 (0x02)as_sequence

path_attributes › next_hop

フィールド型既定値Auto説明
next_hopipv4

path_attributes › multi_exit_disc

フィールド型既定値Auto説明
meduint(32)

path_attributes › local_pref

フィールド型既定値Auto説明
local_prefuint(32)

path_attributes › aggregator

フィールド型既定値Auto説明
asnuint(32)
addressipv4

path_attributes › communities

フィールド型既定値Auto説明
valueslist<uint(32)> — PDU の残りすべて

path_attributes › mp_reach_ipv4_unicast

フィールド型既定値Auto説明
afiuint(16)1
safiuint(8)1
next_hop_lengthuint(8)next_hop のオクテット長
next_hoplist<ipv4> — next_hop_length オクテット
reserveduint(8)
nlrilist<struct> — PDU の残りすべて
path_attributes › mp_reach_ipv4_unicast › nlri

各要素は以下のフィールドの組です。

フィールド型既定値Auto説明
lengthuint(8)
prefixbytes — (length + 7) / 8 オクテット

path_attributes › mp_reach_ipv6_unicast

フィールド型既定値Auto説明
afiuint(16)2
safiuint(8)1
next_hop_lengthuint(8)next_hop のオクテット長
next_hoplist<ipv6> — next_hop_length オクテット
reserveduint(8)
nlrilist<struct> — PDU の残りすべて
path_attributes › mp_reach_ipv6_unicast › nlri

各要素は以下のフィールドの組です。

フィールド型既定値Auto説明
lengthuint(8)
prefixbytes — (length + 7) / 8 オクテット

path_attributes › mp_reach_vpnv4

フィールド型既定値Auto説明
afiuint(16)1
safiuint(8)128
next_hop_lengthuint(8)next_hop のオクテット長
next_hoplist<struct> — next_hop_length オクテット
reserveduint(8)
nlrilist<struct> — PDU の残りすべて
path_attributes › mp_reach_vpnv4 › next_hop

各要素は以下のフィールドの組です。

フィールド型既定値Auto説明
rdbytes(8)
addressipv4
path_attributes › mp_reach_vpnv4 › nlri

各要素は以下のフィールドの組です。

フィールド型既定値Auto説明
lengthuint(8)
labeluint(20)
expuint(3)
bosuint(1)
rdbytes(8)
prefixbytes — (length - 81) / 8 オクテット

path_attributes › mp_reach_vpnv6

フィールド型既定値Auto説明
afiuint(16)2
safiuint(8)128
next_hop_lengthuint(8)next_hop のオクテット長
next_hoplist<struct> — next_hop_length オクテット
reserveduint(8)
nlrilist<struct> — PDU の残りすべて
path_attributes › mp_reach_vpnv6 › next_hop

各要素は以下のフィールドの組です。

フィールド型既定値Auto説明
rdbytes(8)
addressipv6
path_attributes › mp_reach_vpnv6 › nlri

各要素は以下のフィールドの組です。

フィールド型既定値Auto説明
lengthuint(8)
labeluint(20)
expuint(3)
bosuint(1)
rdbytes(8)
prefixbytes — (length - 81) / 8 オクテット

path_attributes › mp_reach_evpn

フィールド型既定値Auto説明
afiuint(16)25
safiuint(8)70
next_hop_lengthuint(8)next_hop のオクテット長
next_hopbytes — next_hop_length オクテット
reserveduint(8)
nlritlv — PDU の残りすべて
path_attributes › mp_reach_evpn › nlri
  • タイプ 8 ビット、長さ 8 ビット。
  • 長さは値の部分だけを数えます。
  • 未知のタイプは値をオクテット列のまま保持します。
タイプ値名前値のフィールド説明
1 (0x01)ethernet_adrd, esi, ethernet_tag, mpls_label
2 (0x02)mac_iprd, esi, ethernet_tag, mac_length, mac, ip_length, ip_address, labels
3 (0x03)inclusive_multicastrd, ethernet_tag, ip_length, originating_ip
4 (0x04)ethernet_segmentrd, esi, ip_length, originating_ip
5 (0x05)ip_prefixrd, esi, ethernet_tag, ip_prefix_length, ip_prefix, gateway, mpls_label; 値が 34 オクテットのとき
5 (0x05)ipv6_prefixrd, esi, ethernet_tag, ip_prefix_length, ip_prefix, gateway, mpls_label; 値が 58 オクテットのとき
path_attributes › mp_reach_evpn › nlri › ethernet_ad
フィールド型既定値Auto説明
rdbytes(8)
esibytes(10)
ethernet_taguint(32)
mpls_labeluint(24)
path_attributes › mp_reach_evpn › nlri › mac_ip
フィールド型既定値Auto説明
rdbytes(8)
esibytes(10)
ethernet_taguint(32)
mac_lengthuint(8)
macmac
ip_lengthuint(8)
ip_addressbytes — ip_length / 8 オクテット
labelslist<uint(24)> — PDU の残りすべて
path_attributes › mp_reach_evpn › nlri › inclusive_multicast
フィールド型既定値Auto説明
rdbytes(8)
ethernet_taguint(32)
ip_lengthuint(8)
originating_ipbytes — ip_length / 8 オクテット
path_attributes › mp_reach_evpn › nlri › ethernet_segment
フィールド型既定値Auto説明
rdbytes(8)
esibytes(10)
ip_lengthuint(8)
originating_ipbytes — ip_length / 8 オクテット
path_attributes › mp_reach_evpn › nlri › ip_prefix
フィールド型既定値Auto説明
rdbytes(8)
esibytes(10)
ethernet_taguint(32)
ip_prefix_lengthuint(8)
ip_prefixipv4
gatewayipv4
mpls_labeluint(24)
path_attributes › mp_reach_evpn › nlri › ipv6_prefix
フィールド型既定値Auto説明
rdbytes(8)
esibytes(10)
ethernet_taguint(32)
ip_prefix_lengthuint(8)
ip_prefixipv6
gatewayipv6
mpls_labeluint(24)

path_attributes › mp_reach_nlri

フィールド型既定値Auto説明
afiuint(16)
safiuint(8)
next_hop_lengthuint(8)next_hop のオクテット長
next_hopbytes — next_hop_length オクテット
reserveduint(8)
nlribytes — PDU の残りすべて

path_attributes › mp_unreach_ipv4_unicast

フィールド型既定値Auto説明
afiuint(16)1
safiuint(8)1
withdrawnlist<struct> — PDU の残りすべて
path_attributes › mp_unreach_ipv4_unicast › withdrawn

各要素は以下のフィールドの組です。

フィールド型既定値Auto説明
lengthuint(8)
prefixbytes — (length + 7) / 8 オクテット

path_attributes › mp_unreach_ipv6_unicast

フィールド型既定値Auto説明
afiuint(16)2
safiuint(8)1
withdrawnlist<struct> — PDU の残りすべて
path_attributes › mp_unreach_ipv6_unicast › withdrawn

各要素は以下のフィールドの組です。

フィールド型既定値Auto説明
lengthuint(8)
prefixbytes — (length + 7) / 8 オクテット

path_attributes › mp_unreach_vpnv4

フィールド型既定値Auto説明
afiuint(16)1
safiuint(8)128
withdrawnlist<struct> — PDU の残りすべて
path_attributes › mp_unreach_vpnv4 › withdrawn

各要素は以下のフィールドの組です。

フィールド型既定値Auto説明
lengthuint(8)
labeluint(20)
expuint(3)
bosuint(1)
rdbytes(8)
prefixbytes — (length - 81) / 8 オクテット

path_attributes › mp_unreach_vpnv6

フィールド型既定値Auto説明
afiuint(16)2
safiuint(8)128
withdrawnlist<struct> — PDU の残りすべて
path_attributes › mp_unreach_vpnv6 › withdrawn

各要素は以下のフィールドの組です。

フィールド型既定値Auto説明
lengthuint(8)
labeluint(20)
expuint(3)
bosuint(1)
rdbytes(8)
prefixbytes — (length - 81) / 8 オクテット

path_attributes › mp_unreach_evpn

フィールド型既定値Auto説明
afiuint(16)25
safiuint(8)70
withdrawntlv — PDU の残りすべて
path_attributes › mp_unreach_evpn › withdrawn
  • タイプ 8 ビット、長さ 8 ビット。
  • 長さは値の部分だけを数えます。
  • 未知のタイプは値をオクテット列のまま保持します。
タイプ値名前値のフィールド説明
1 (0x01)ethernet_adrd, esi, ethernet_tag, mpls_label
2 (0x02)mac_iprd, esi, ethernet_tag, mac_length, mac, ip_length, ip_address, labels
3 (0x03)inclusive_multicastrd, ethernet_tag, ip_length, originating_ip
4 (0x04)ethernet_segmentrd, esi, ip_length, originating_ip
5 (0x05)ip_prefixrd, esi, ethernet_tag, ip_prefix_length, ip_prefix, gateway, mpls_label; 値が 34 オクテットのとき
5 (0x05)ipv6_prefixrd, esi, ethernet_tag, ip_prefix_length, ip_prefix, gateway, mpls_label; 値が 58 オクテットのとき
path_attributes › mp_unreach_evpn › withdrawn › ethernet_ad
フィールド型既定値Auto説明
rdbytes(8)
esibytes(10)
ethernet_taguint(32)
mpls_labeluint(24)
path_attributes › mp_unreach_evpn › withdrawn › mac_ip
フィールド型既定値Auto説明
rdbytes(8)
esibytes(10)
ethernet_taguint(32)
mac_lengthuint(8)
macmac
ip_lengthuint(8)
ip_addressbytes — ip_length / 8 オクテット
labelslist<uint(24)> — PDU の残りすべて
path_attributes › mp_unreach_evpn › withdrawn › inclusive_multicast
フィールド型既定値Auto説明
rdbytes(8)
ethernet_taguint(32)
ip_lengthuint(8)
originating_ipbytes — ip_length / 8 オクテット
path_attributes › mp_unreach_evpn › withdrawn › ethernet_segment
フィールド型既定値Auto説明
rdbytes(8)
esibytes(10)
ip_lengthuint(8)
originating_ipbytes — ip_length / 8 オクテット
path_attributes › mp_unreach_evpn › withdrawn › ip_prefix
フィールド型既定値Auto説明
rdbytes(8)
esibytes(10)
ethernet_taguint(32)
ip_prefix_lengthuint(8)
ip_prefixipv4
gatewayipv4
mpls_labeluint(24)
path_attributes › mp_unreach_evpn › withdrawn › ipv6_prefix
フィールド型既定値Auto説明
rdbytes(8)
esibytes(10)
ethernet_taguint(32)
ip_prefix_lengthuint(8)
ip_prefixipv6
gatewayipv6
mpls_labeluint(24)

path_attributes › mp_unreach_nlri

フィールド型既定値Auto説明
afiuint(16)
safiuint(8)
withdrawnbytes — PDU の残りすべて

path_attributes › extended_communities

フィールド型既定値Auto説明
valueslist<uint(64)> — PDU の残りすべて

path_attributes › large_communities

フィールド型既定値Auto説明
valueslist<struct> — PDU の残りすべて
path_attributes › large_communities › values

各要素は以下のフィールドの組です。

フィールド型既定値Auto説明
global_adminuint(32)
local_data1uint(32)
local_data2uint(32)

path_attributes › pmsi_tunnel

フィールド型既定値Auto説明
flagsuint(8)
tunnel_typeenum(8)
mpls_labeluint(24)
tunnel_idbytes — PDU の残りすべて
path_attributes › pmsi_tunnel › tunnel_type
値名前
0 (0x00)none
1 (0x01)rsvp_te_p2mp
2 (0x02)mldp_p2mp
3 (0x03)pim_ssm
4 (0x04)pim_sm
5 (0x05)bidir_pim
6 (0x06)ingress_replication
7 (0x07)mldp_mp2mp

nlri

各要素は以下のフィールドの組です。

フィールド型既定値Auto説明
lengthuint(8)
prefixbytes — (length + 7) / 8 オクテット

サンプルテンプレート