HCNP-BGP

BGP

基本コンセプト

  AS:ネットワークの集合とIPデバイス構成を管理する単一の組織や団体で構成されています。

  IGP:RIP、OSPF、IS-IS

  EGP:BGP(BGPは、最も広く使われているプロトコルEGPです)

BGPは現在、ほとんどEGPルーティングプロトコルが異なるAS間の相互作用を実装するために使用されています。サポートVLSM、CIDR、自動/手動経路集約。トランスポートプロトコル、ポート番号179としてTCPを使用します。最初の二つは相互に最初のTCPコネクションを確立するBGPルータをピアして、パラメータをネゴシエートし、ピア関係を確立します。最初に、双方はBGPルーティングテーブルを同期します、BGPルーティングテーブル内の同期が完了した後、BGPルータは、定期的なルーティングアップデートを送信しませんが、必要なときにのみ、増分更新またはトリガ更新を送信します。ない定期的な交換ルーティング情報としてIGPとして。

  1. BGPピア関係タイプ

異なるBGPピア関係装置を直接接続する必要がないOSPFと、BGPは限りつのルータがIP接続性を有し、十分に確立されたTCP179ポート接続に基づくものとすることができるようにBGPピアを確立することができる、トランスポートプロトコルとしてTCPを使用しボディ関係、BGPピアとの間の関係は、デバイス間です。

体の関係(1)EBGPピア

    ピア関係に異なるASにある2台のBGPルータを確立します。一般的に、EBGPピアの関係は次のように直線的コネクタに基づいていなければなりません。デフォルトでは、BGPは、これらのパケットのみホップを送信することができるように、1のTTL値ピアEBGP間で送信されるからです。もちろん、私たちは、身体に直接接続されていないルータ間のEBGPピア関係の確立をホップ制限EBGPピアを変更することができます。

本体(2)IBGPピアとの間の関係

ピア関係を同じAS内の2台のBGPルータを確立します。

2 IBGPスプリットホライズンルール

 AS_PATHプロパティはEBGP BGPルーティングピア間で転送中のループを防ぐことができます。AS_PATHがリングを置く能力を提供することができませんので、しかし、BGPルートは、AS内を通過するとき。BGPルータがBGPルートをIBGPピアから学習したときに、ルート、それがIBGPピアにアドバタイズされないことを提供します。これは、レベルIBGP分割ルールです。

3ブラックホールとBGP同期ルーティング

、ブラックホールの問題をルーティングBGP同期ルールの導入を避けるために:ルータは、BGPルートへのIBGPピアから学ぶ場合は、経路のその部分を使用しないか、または経路は、そのEBGPピアにアドバタイズ彼はIBGPとIGPルートの間のルートの同期に必要とされ、この道を持って研究し、IGPからでない限り。デフォルトでは、BGP同期ルールがオフになっています。

4ルート発表

BGPの間の相互作用は、ピアをルーティングするとき、(BGPネクストホップルーティングネクストホップ属性がいっぱいことを条件とする)いくつかの主な原則があります。

ルータが同じ宛先ネットワークへのBGPルートの数に見出すことができる場合(1)、ルータは、選択された経路を介してルータに最適な経路を選択するために処理し、通常、ルータは、最適経路にロードされます(ロードバランシング活性化を除く)テーブルルーティング、およびBGPピアにのみ最適なルートをアドバタイズ

(2)ルータはEBGP BGPルートに仲間から学ぶとき、それはルートをデフォルトとしますが、すべてのIBGPピアとすべてのEBGPピアにアドバタイズ。

ルータがBGPルートへのIBGPピアから学習した場合(3)、彼はスプリットレベルIBGPルールのおもむくままである、他のIBGPピアにこれらのルートをアナウンスしません。

同期がEBGPにのみ、これらのBGPルート、適切なルートを学習するだけIGPルータを介して、次いで、活性化されている場合、ルータはBGPピア、BGPへのIBGPルートから学ぶ(4)ピアは、BGP同期を通じて日も適切なルーティングにIGPから学習せず、オフになって、彼はまた、EBGPピアにこれらのBGPルートを発表します。

5ルータ-ID

BGPルータIDはBGPプロトコルネットワークデバイスの識別子であり、32ビットの長さは、同じIPv4アドレス形式は、手動で設定または自動的に取得することができます。

6つのメッセージタイプとフォーマット

4つの主要なBGPプロトコルパケットがあります。すべてのBGPパケットは、ヘッド、ヘッド19byteの同じフォーマットを持っています。

 

 

 

マーカー(メーカー):このフィールドは、プロトコルの互換性のために予約されています

長さ(バイト単位)BGPパケット長

タイプ:BGPパケットタイプ、パケットタイプフィールド値のマッピング関係、1.openパケット、2.updateパケット、パケット3.Notification、4.Keepaliveパケット。

(1)メッセージを開き

 

 

 

TCP接続が確立された後、デバイスに含まれるメッセージの数が配置されているように、2つの側面は、オープンパケットと対話するために始めた、BGPバージョン番号、ルータ-ID情報だけでなく、いくつかのオプションのパラメータ、ルータは、Openによって発行された他のメッセージによって認識された場合、その後すぐに確認としてキープアライブメッセージを返します。

BGPプロトコルのバージョン:バージョン

第AS:BGPパケットの送信元AS番号

それ以外の場合はピアが無効であると考え、どのくらい互いのキープアライブまたは更新メッセージを受信しなければならない:アライブ(ホールド時間)を保管してください。ピアネゴシエーションパラメータの2ペアは、キープアライブ時間が異なることができますが、双方が最終的に認識した場合にのみ、時間の最小値をキープアライブ。

オプションパラメータの長さ:BGPパケットは、長さのパラメータはオプションです

オプションのパラメータ:タイプごとに使用されるオプションのパラメータ、長さ、及びフォーマットは価値トリプルを記載。

(2)更新メッセージ

 

 

 

BGP Updateパケットルータは、そのルーティング情報アドバタイズしたピアを使用しています。1つのBGPアップデートメッセージ又は広告経路に類似する複数の属性を有し、パス属性は、異なる経路をアドバタイズするために、異なるBGPアップデートメッセージを必要有します。更新メッセージは、一つまたは複数のBGPルートを元に戻すために使用することができます

経路長(撤回経路長)を抜き出し:Updateメッセージは、0個以上の準備を引き出すBGPルートを含むことができます。このフィールドは、フィールドに含まれる「アンドゥルートエントリ」Updateメッセージの長さを示す符号なし整数です。

ルーティングエントリの失効:接頭辞をルーティングストアBGPに使用するには、BGPルートの数は、このUpdateメッセージを元に戻す必要がある場合は、このフィールドは、プレフィクスリストをBGPルーティングが含まれます、取り消される必要があります。各BGPルーティングプレフィックスは2ドルのプレフィックスとプレフィックス長です備えます。

総パス属性の長さ:アップデートパス属性の長さの合計

パス属性:BGPルータは、BGPアップデートメッセージは、隣人へのルートを発表パス属性に含まれるメッセージを使用しています。

ネットワーク層到達可能性:このフィールドは、BGPルーティングプレフィックスがアドバタイズされて格納するために使用されます。

(3)キープアライブパケット

       BGPプロトコルのTCP実装の信頼性に依存プロトコルが、彼は、TCPキープアライブメカニズムに依存していますが、定期的に生存ピアを理解するためにキープアライブメッセージを送信しません。BGPルータは、キープアライブタイマー時間の1/3にキープアライブ間隔のデフォルトを送信する、ピアのBGPをキープアライブタイマーを維持します

(4)通知メッセージ

BGPがエラーを検出したとき、彼は相手に通知する通知メッセージを使用することができます。

 

 

 

7つのビューBGPピア

 DIS BGPピアは、ステータスが設立され、平均体は、ピア関係の確立を完了しました

8 BGPルーティングテーブル

デバイスが他のBGPピアから経路を受信すると(1)、彼は、これらのルートのインバウンドルーティングポリシーを作ることができます。

(2)各ルートは、BGP可否チェックとなる(クエリは、グローバルルーティングテーブル内のルーティングNEXT_HOPを移動する場合、装置は、各NEXT_HOP BGPルートのアクセス可能性を算出、BGPルートが利用可能であると考えられますそうでない場合)無効(使用できないと考え、)有効。BGPルーティングテーブルでは、BGPは、アスタリスクの前に利用可能なルーティング。ライン意志角括弧の最適なルーティング。

(3)ないEBGPがタグから学んだ場合、私にマークされたルーティングがIBGPピアから学習しました

BGPへ9

IGPとは異なり、BGPは、自動的にルートを見つけることができませんが、必要が手動でBGPへのルートを公開します

(1)BGPにネットワークコマンドを使用して

(2)経路BGPにインポート-routeコマンド。このコマンドは、広告ルートがORIGIN属性の矛盾につながるネットワークと比較されます。

(3)BGPに集約サマリールートを使用

2つのパス属性

認識とオプション:BGPパス属性は2つのカテゴリに分類されています。属性は、パスの属性を識別することができなければならないすべてのBGPルータによって受け入れられ、任意の属性を必要としないすべてのBGPルータが識別されなければなりません。

二つのカテゴリーで認識のプロパティ:必須と自由意思決定、必須属性は、Updateメッセージルーティングアップデートではなく、必要な属性Updateパケットが運ばなければならないかを決定する自由際BGPルータが通知を運ばなければならないパス属性を使用している場合を指します。

可选属性分两类:传递和非传递。对于传递属性,如果路由器不能够识别该路径属性,也应该接受携带该路径属性的BGP路由更新,且当路由器将该路由通告给其他对等体时必须携带该路径属性。对于非可传递属性,如果BGP路由器不能够识别该属性,那么该路由器将会忽略携带该路径属性的BGP路由更新且不将该路由通告给其他BGP对等体。

(1)     公认强制:Origin,AS_Path,Next_Hop

(2)     公认自由属性:Local_Preference,Atomic_Aggregate

(3)     可选传递:Community,Aggregator

(4)     可选非传递:MED,Originator_ID,Cluster_List

1 Preferred_Value

华为私有路径属性,取值范围0-65535,该值越大路由的优先级越高。只在本地有效,不会传递给其他对等体(不会出现在Update报文中)。用法之一:结合路由策略,对路由器从对等体学习到的路由,进行优先级调节。

2 Local_Preference(本地优先级)

该属性是一个公认自由决定属性,只能在IBGP对等体之间传输,当路由被通告给EBGP对等体时,禁止携带该属性。故该属性只能在一个AS内部传递。改值越大路由越有可能被优选。用法之一:当BGP路由器从EBGP对等体学习到路由时,路由器会为EBGP路由关联一个Local_Preference属性值,缺省为100。而当他们将这条路由通告给IBGP对等体时,将携带该属性。这是可在路由器上配合路由策略,修改该条路由的Local_Preference属性值。

3 AS_Path

该属性为公认强制属性,它描述了一条BGP路由在传递过程中所经过的AS号码。AS_Path是一个有长度的AS号码列表,一台路由器在将路由通告给自己的EBGP对等体时,会将本地的AS号插入到该路由原有的AS_Path之前。AS_Path具有两个非常重要的作用:1)避免EBGP路由的环路;2)用于BGP路由的优选,AS_Path越短则该路由被视为越优,因为这条路径到达目的网络所经过的AS个数更少。

4 Origin

该属性是一个公认强制属性,用于描述BGP路由的来源,当一条路由被发布到BGP后,Origin属性便被发布该路由的路由器附加到这条路由上,并且在路由传递过程中,缺省时Origin属性值不变。Origin属性有3种类型:

1) IGP:如果路由是由始发的BGP路由器使用network命令发布到BGP的,那么该BGP路由的Origin属性为IGP

2) EGP:如果路由是通过EGP学习到的,那么该BGP路由的Origin属性为EGP(此处EGP指的是一个路由协议,现在已经不用了)

3) Incomplete:如果路由是通过其他方式学习到的,例如import-route,则属性为Incomplete

当到达同一个目的网段存在多条BGP路由时,如果其他条件相同,Origin属性为IGP的路由最优,其次是EGP,最后是Incomplete

5 MED

可选非传递属性,是一种度量值,MED属性值最小的BGP路由将被优选。当路由器将某条设置了MED属性的路由通告给EBGP对等体时,后者在其所在的AS内通告该BGP路由时,缺省会携带该MED属性值。但是当该路由被传出AS时该MED属性值不会被携带。

6 Next_Hop

该属性是公认强制属性,所有的BGP路由都会携带该属性。该属性描述了到达目的网段的下一跳地址。BGP路由携带的Next_Hop属性值将在路由器计算路由时用于确认到达该路由的目的网段的实际下一跳IP地址和出接口

(1)     Next_Hop属性的缺省操作

1) 当路由器将本地路由表中的直连路由,静态路由或通过IGP协议学习到的动态路由使用network或import-route命令发布到BGP时,在该路由器的BGP路由表中,这些路由的Next_Hop属性为0.0.0.0(该路由器是这些路由的始发者)

2) 当BGP路由器使用aggregate命令通告一条BGP路由汇总时,在该路由器的BGP路由表中,该汇总路由的Next_Hop属性值为127.0.0.1。

3) 当路由器将本地始发的BGP路由通告给自己的IBGP对等体时,路由的Next_Hop属性值将被设置为这台路由器的BGP更新源IP地址(Update Source IP);而当路由器将非本地始发的IBGP路由通告给自己的IBGP对等体时,缺省时该路由原有的Next_Hop属性不会被改变。

4) 当路由器将一条EBGP路由通告给自己的IBGP对等体时,缺省时该路由器不会改变该路由原有的Next_Hop属性

5) 当路由器将一条BGP路由通告给自己的EBGP对等体时,无论该路由是否为该路由器始发,路由的Next_Hop属性值都会被设置为这台路由器的更新源IP地址

BGP的更新源IP地址也即设备发送BGP协议报文时所使用的源IP地址,该地址可以是设备直连接口的IP地址,也可是设备的Loopback接口的IP地址

(2)     使用next-hop-local命令修改Next_Hop属性值

 

 

 

通常,AS内部运行这一个IGP协议用于实现AS内的路由互通。而R2,R3之间的互联链路,对于AS34而言是外部链路,该链路使用的网段信息不会通过AS内的IGp进行扩散。换句话说,R4也许不能通过IGP协议学习到去往10.1.23.2的路由,那么即使R4可以通过BGP学习到10.5.0.0/16路由,这条路由也无法被优选,更不会被R4使用。解决这个问题的方法,一是可以在IGP协议中发布R2,R3之间的互联网段的路由,二是使用BGP的next-hop-local特性。可以在R3上执行peer 10.1.34.4 next-hop-local命令,如此一来,当R3将EBGP路由通告给R4时,这些路由的Next_Hop属性值将被修改为R3的BGP更新源IP地址,对于R4而言这个地址是到达的。

7 Atomic_Aggregate及Aggregator

在一个BGP网络中部署路由汇总,可以有效地减少BGP路由器通告的路由条目数目,减少设备的路由表规模,并将拓扑变化产生的影响限制在一个相对更小的范围内。

BGP在手工路由汇总的命令中,设计了as-set关键字,执行路由汇总时使用该关键字,则产生的汇总路由将继承明细路由的路径属性,如此一来明细路由的AS_Path等属性将不会丢失。

 

 

 

此时AS_Path由两个片段组成,其一是300(AS_Sequence),其二是{100,200}(AS_Set)。

Atomic_Aggregate是一个公认自由决定属性,他只相当于一种预警属性,不承载任何信息。当路由器收到一条携带Atomic_Aggregate的BGP路由更新时,他便知道该路由可能出现了路径属性丢失,此时该路由器再把这条路由通告给其他对等体时,需保留该属性,且收到该路由更新的路由器不能将这条路由再度明细化。

Aggregator是一个可选传递属性,当路由汇总被执行时,执行路由汇总操作的路由器可以为该汇总路由添加Aggregator属性,并在该属性中记录本地AS号和自己的Router-ID,故该属性用于标记路由汇总行为发生在哪个AS以及哪个BGP路由器上。

8  Community

该属性是一个可选传递属性,它类似于路由的标记,可以针对特定的路由设置特定的Community属性值,下游路由器在执行路由策略是,可以通过匹配Community属性值来匹配目标路由。

9 复位BGP

reset bgp all:复位路由器的所有BGP连接

reset bgp as-number:复位路由器与特定AS的BGP连接

reset bgp peer-address:复位路由器与特定对等体的BGP连接

reset bgp internal:复位路由器的所有IBGP连接

reset bgp external:复位路由器的所有EBGP连接

执行reset bgp后,BGP对等体关系将会被复位,BGP连接需要被重建,路由重新收敛,从而影响网络。如果设备支持Route—refresh,那么可以使用refresh bgp进行BGP连接的软复位。所谓软复位,是指在不重建BGP连接的情况下,刷新BGP路由从而使路由策略立即生效的方法。

三 路由反射器

路由反射器弥补了水平分割的缺陷。

  1. 路由反射器基本概念

路由反射器是一种用于解决AS内部BGP路由传递问题的技术。路由反射器以及他的客户端所构成的系统称为路由反射簇,如图7-46所示网络中,路由反射器R3与其客户R2,R4,R5就构成了一个路由反射簇。路由反射器与所有的客户建立IBGP对等体关系,客户之间无需建立IBGP对等体关系。路由反射器的配置是在充当反射器的BGP路由器上完成的,客户设备上必须要作任何配置。

路由反射器只在以下几种场景才会进行路由反射:

1) 如果路由反射器从自己的非客户端对等体学习到一条IBGP路由,则它会将该路由反射给所有客户。

2) 如果路由反射器从自己的客户学习到一条IBGP路由,则它会将该路由反射给所有非客户,以及除了该客户之外的其他所有客户。(华为路由器支持关闭路由在客户之间的反射行为)

3) 当路由反射器执行路由反射时,它只将自己使用的,最优的BGP路由进行反射。

 

 

 

2 路由反射器环境下的路由防环

实际上,路由反射器对IBGP路由的操作是突破了水平分割规则的,而IBGP路由又依赖水平分割规则来实现无环化。BGP使用Originator_ID和Cluster_List这两个可选非传递属性来实现防环,这两个属性只在部署了路由反射器的环境中使用。

(1)     Originator_ID属性是一个可选非传递属性,长度为32bit,格式与IPv4地址一致。当一条BGP路由被路由反射器反射给其他路由器时,如果该路由已经携带了Originator_ID属性,则保留,否则路由反射器为这条路由添加Originator_ID属性,并将属性值设置为该路由在本地AS内的始发路由器的Router-ID。当路由器从BGP对等体收到一条IBGP路由,并且该路由所携带的Originator_ID属性值与自己的BGP Router-ID相同时,他意识到从自己这里始发的路由又被通告回来了,他将忽略这条路由的更新。

(2)     Cluster_List属性是一个可选非传递属性,该属性值是可变长的,他可以包含一个或者多个Cluster_List(路由反射簇标识符)。路由反射器与其客户构成了路由反射簇,在一个AS内可以有多个路由反射簇,每个路由反射簇都有自己的Cluster_ID。Cluster_ID是一个可配置的,32bit的数值,缺省时为路由发射器的BGP Router-ID。当一条BGP路由被路由反射器反射时,如果该路由中已经含有Cluster_List属性,那么路由反射器会将本地的Cluster_ID附加到路由的Cluster_List属性值之前;如果该路由不存在Cluster_List属性,则路由反射器为它创建Cluster_List属性并将本地的Cluster_ID插入Cluster_List属性值中。当一台路由反射器收到一条BGP路由后,若发现该路由携带Cluster_List属性,并且Cluster_List属性值中包含自己的Cluster-ID,则说明被自己反射出去的BGP路由又被通告回来了,此时它将忽略该路由的更新。

四 联邦

联邦也被称为联盟,大致思想是在一个大的AS内创建若干个小的AS,使得AS内部出现一种特殊的EBGP对等体关系,从而解决IBGP路由在AS内传递的问题。

1 概念

 

 

 

在AS3456内创建两个小AS,AS64512和AS64513。此时AS3456被称为联邦AS,AS64512和AS64513被称为成员AS。如此一来R4和R5之间的关系则变成EBGP对等体关系。当R4从IBGP对等体R3学习到BGP路由时,他可以将路由通告给联邦对等体R5,打破了水平分割规则。因此通过在AS3456内部署联邦,即可在AS内没有实现IBGP对等体全互联的情况下,解决路由传递问题。对于联邦AS外部的网络而言,他们并不知晓成员AS。

2 AS_Path属性在联邦AS中的处理

BGP设计了4种AS_Path片段类型:AS_Sequence,AS_Set,AS_Confed_Sequence,AS_Confed_Set。

关于AS_Sequence,AS_Set片段前面已经介绍过。联邦使用了AS_Confed_Sequence,AS_Confed_Set这两种片段,这两种片段与前面两种类似,只不过他们只被用于联邦。当路由在联邦EBGP对等体之间传递时,成员AS号被写入这些特殊的AS_Path片段中。而当路由被传出联邦时,成员的AS号应该被移除,此时这两种片段类型将被设备从AS_Path属性中移除。

五 BGP路由优选规则

当一台路由器学习到多条到达相同目的网段的BGP路由时,他将进行路由优选,选出最优的一条路由,并且只讲最优的路由加载到全局路由表作为数据转发依据(不考虑路由负载分担),也只会将最优的路由通告给其他对等体。BGP通过如下次序进行路由优选。

1) 优选Preferred_Value属性值最大的路由

2) 优选Local_Preference属性值最大的路由

3) 本地始发的路由由于从其他对等体学习到的路由。其中本地始发的路由类型按优先级从高到低排列为:手工汇总路由,自动汇总路由,network发布的路由,import-route发布的路由

4) 优选AS_Path属性值最短的路由

5) 优选Origin属性最优的路由。高低顺序:IGP,EGP,Incomplete

6) 优选MED属性值最小的路由

7) 优选从EBGP对等体学来的路由(EBGP路由的优先级高于IBGP)

8) 优选到Next_Hop的IGP度量值最小的路由

9) 优选Cluster_List最短的路由

10)   优选Router-ID最小的设备通告的路由

11)   优选具有最小IP地址(peer命令所指定的地址)的对等体通告的路由

 

BGP状态机

 

 

 

BGP有限状态机共有六种状态,分别是Idle、Connect、Active、OpenSent、OpenConfirm和Established。

  • Idle状态是BGP初始状态。在Idle状态下,BGP既不发送TCP连接请求,也拒绝邻居发送的TCP连接请求。只有在收到本设备的Start事件后,BGP才开始尝试和其它BGP对等体进行TCP连接,并转至Connect状态。
    •  
    • Start事件是由一个操作者配置一个BGP过程,或者重置一个已经存在的过程或者路由器软件重置BGP过程引起的。
    • 任何状态中收到Notification报文或TCP拆除链路通知等Error事件后,BGP都会转至Idle状态。
    • 在Connect状态下,BGP启动连接重传定时器(Connect Retry,缺省为32秒),等待TCP完成连接。
      •  
      • 如果TCP连接成功,那么BGP向对等体发送Open报文,并转至OpenSent状态;
      • 如果TCP连接失败,那么BGP转至Active状态;
      • 如果连接重传定时器超时,BGP仍没有收到BGP对等体的响应,那么BGP继续尝试和其它BGP对等体进行TCP连接,停留在Connect状态。
      • 如果发生其他事件(由系统或者操作人员启动的),则退回到Idle状态。
      • 在Active状态下,BGP总是在试图建立TCP连接。(实际上是被动的建TCP)
        •  
        • 如果TCP连接成功,那么BGP向对等体发送Open报文,关闭连接重传定时器,并转至OpenSent状态;
        • 如果TCP连接失败,那么BGP停留在Active状态;
        • 如果连接重传定时器超时,BGP仍没有收到BGP对等体的响应,那么BGP转至Connect状态。
      • 在OpenSent状态下,BGP等待对等体的Open报文,并对收到的Open报文中的AS号、版本号、认证码等进行检查。
        •  
        • 如果收到的Open报文正确,那么BGP发送Keepalive报文,并转至OpenConfirm状态;
        • 如果发现收到的Open报文有错误,那么BGP发送Notification报文给对等体,并转至Idle状态。
      • 在OpenConfirm状态下,BGP等待Keepalive或Notification报文。如果收到Keepalive报文,则转至Established状态,如果收到Notification报文,则转至Idle状态。
      • 在Established状态下,BGP可以和对等体交换Update、Keepalive、Route-refresh报文和Notification报文。
        •  
        • 如果收到正确的Update或Keepalive报文,那么BGP就认为对端处于正常运行状态,将保持BGP连接。
        • 如果收到错误的Update或Keepalive报文,那么BGP发送Notification报文通知对端,并转至Idle状态。
        • Route-refresh报文不会改变BGP状态。
        • 如果收到Notification报文,那么BGP转至Idle状态。
        • 如果收到TCP拆链通知,那么BGP断开连接,转至Idle状态。

 

在BGP协议中,一种报文叫做notification,当BGP邻居关系断开,会发送notification消息,里面会包含一些错误码,有关错误码的解释,从网上找了一些,一起分享下,有错误的地方,也希望可以指出:

NO

类型

错误码

中文(非必要)

1

报文头

0

 

2

1/1

连接未同步

3

1/2

错误消息长度

4

1/3

错误消息类型

5

open报文

2/1

不支持的版本号

6

2/2

错误的对端AS号

7

2/3

错误的BGP标识符

8

2/4

不支持的选项参数

9

2/5

认证失败

10

2/6

不支持的HOLDTIMER

11

2/7

不支持的能力类型

12

update报文

3/1

畸形属性列表

13

3/2

未识别的共认属性

14

3/3

缺少公认属性

15

3/4

属性标识错误(属性类型和属性标识比匹配)

16

3/5

属性长度错误

17

3/6

无效的origin属性(不认识的origin属性值)

18

3/7

AS路由环路

19

3/8

无效的next-hop属性

20

3/9

可选参数的错误

21

3/10

无效网络字段(无效IP地址)

22

3/11

畸形AS-PATH

23

4/0

4/0

Hold timer超时

24

5/0

5/0

FSM错误(状态机错误)

25

终止的子错误

6/1

路由达到最大路由数

26

6/2

人为shutdown

27

6/3

undo peer的时候

28

6/4

人为reset

29

6/5

连接拒绝

30

6/6

其他的配置改变

31

6/7

连接冲突解决

32

6/8

资源不足

33

6/9

BFD down导致BGP session down

34

6/0

其他所有情况

 

BGP报文交互中的角色

BGP报文交互中分为Speaker和Peer两种角色。

1、Speaker:

发送BGP报文的设备称为BGP发言者(Speaker),它接收或产生新的报文信息,并发布(Advertise)给其它BGP Speaker。

2、Peer:

相互交换报文的Speaker之间互称对等体(Peer)。若干相关的对等体可以构成对等体组(Peer Group)。

 

Route-refresh(刷新)报文:

用于在改变路由策略后请求对等体重新发送路由信息。只有支持路由刷新(Route-refresh)能力的BGP设备会发送和响应此报文。

おすすめ

転載: www.cnblogs.com/guang-li/p/12128640.html