【BGP】update-sourceの設定

BGP

 BGPピアリングはトランスポートにTCPを使用するため、OSPFのマルチキャストのようにネイバーが直接接続されている必要はありません。

 可用性を高めるため、ルータのループバックインタフェース間でピアリングする設計することが多くあります。送信元アドレスを設定するには、update-source コマンドを使用します。

スポンサーリンク

eBGPでの送信元インタフェース変更

R1(config)#router bgp 1
R1(config-router)#neighbor 2.2.2.2 remote-as 23
R1(config-router)#neighbor 2.2.2.2 update-source loopback 0
R2(config)#router bgp 23
R2(config-router)#neighbor 1.1.1.1 remote-as 1
R2(config-router)#neighbor 1.1.1.1 update-source loopback 0

 ネイバーがアップしません。これは、ルータがそれぞれのループバックアドレスに対しての到達性がないからです。

R1#sh ip bgp summary 
BGP router identifier 1.1.1.1, local AS number 1
BGP table version is 3, main routing table version 3


Neighbor        V           AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd
2.2.2.2         4           23       0       0        1    0    0 never    Idle

 R1とR2にそれぞれループバックへのスタティックルートを設定してみます。

R1(config)#ip route 2.2.2.2 255.255.255.255 192.168.12.2
R2(config)#ip route 1.1.1.1 255.255.255.255 192.168.12.1

 それでも、ネイバーはアップしません。R1のパケットキャプチャを取得しましたが、BGPのパケットが全く送信されていません。eBGPの場合、直接接続されているネイバーしか、セッションを試みません。(TTLが1であったことを思い出してください)今回のループバックアドレスのように、直結経路でないアドレスへセッションを試みる場合は、ebgp-multihopコマンドを使用します。

R1(config)#router bgp 1
R1(config-router)#neighbor 2.2.2.2 ebgp-multihop

 R1のみ設定しました。すると、R1からTCP179のセッションを試みだしました。 ただし、R2でebgp-multihopを設定していないので、R2からTCP RSTが送信され、セッションは確立されません。

R2にも設定をします。

R2(config)#router bgp 23
R2(config-router)#neighbor 1.1.1.1 ebgp-multihop

すると、ネイバーがアップしました。

R1#
*Apr 26 06:35:00.613: %BGP-5-ADJCHANGE: neighbor 2.2.2.2 Up

WireSharkでルータ間のパケットを見ると、TTLが1から255に変更されています。

スポンサーリンク

iBGPでの送信元インタフェース変更

 では、R2とR3のiBGPピアリングで、送信元をループバックアドレスに変更します。 各ループバックへ到達できるよう、スタティックルートも設定します。

R2(config)#router bgp 23 
R2(config-router)#neighbor 3.3.3.3 remote-as 23
R2(config-router)#neighbor 3.3.3.3 update-source loopback 0
R2(config)#ip route 3.3.3.3 255.255.255.255 192.168.23.3
R3(config)#router bgp 23 
R3(config-router)#neighbor 2.2.2.2 remote-as 23
R3(config-router)#neighbor 2.2.2.2 update-source loopback 0
R3(config)#ip route 2.2.2.2 255.255.255.255 192.168.23.2

 しばらくすると、ネイバーがアップします。iBGPの場合、TTLはデフォルトで255なので、マルチホップの設定は不要です。

R2#
*Apr 26 06:49:50.618: %BGP-5-ADJCHANGE: neighbor 3.3.3.3 Up

その他 BGP関連記事は   >>  ルーティングプロトコル(BGP)まとめ << より参照できます。

コメント

タイトルとURLをコピーしました