@network Cisco・アライド実機で学ぶ > Cisco実機で学ぶ(CCNP) > BGP(基本設定 next-hop-self その4)

スポンサードリンク

@network Cisco・アライド実機で学ぶ
◆BGP(基本設定 next-hop-self その4)

※動作確認は、Cisco2500、Cisco1710、Cisco1720、Cisco1721、Cisco2611、Cisco2650、Cisco3620シリーズのルータ、Catalyst2900、Catalyst2950シリーズのスイッチなどで確認しています。コマンド、出力結果、動作は、機種、IOSのバージョンで異なる場合があります。

◆BGP(基本設定 next-hop-self その4)

 ここでは、「BGP(基本設定 その1)」で構築したBGPネットワークを使用し、「next-hop-self」オプションを指定したピアを張り方を紹介します。

そして、その検証を行います。

 まずは、各ルータは、各BGPスピーカとピアを張りますが、「next-hop-self」オプションの指定は行わずに、設定してゆきます。

使用するネットワークは下図になります。


BGP同期は、無効にしておきます。BGP同期については、この後のコンテンツで紹介してゆきます。

 ちなみに、BGP同期とは、『たとえBGPで経路情報を学習してもIGPで学習するまでは、その経路情報を有効にしない。』という機能のことです。

※BGP同期は、IOS12.2(8)以前のバージョンでは、デフォルトで有効になっています。

「no synchronization」コマンドで、BGP同期を無効にすることができます。

Router(config-router)#no synchronization


●各ルータの設定

各ルータの設定は、「BGP(基本設定 その1)」でも紹介していますが、ここでも掲載しておきます。

 強制的にインタフェースをUPさせるために、Router_AのE0インタフェースで「no keepalive」コマンドを設定しておきます。

●Router_Aの設定
!
version 11.2
no service udp-small-servers
no service tcp-small-servers
!
hostname Router_A
!
enable password cisco
!
interface Ethernet0
 ip address 10.10.10.1 255.255.255.0
 no keepalive
!
interface Serial0
 ip address 172.16.0.1 255.255.0.0
 clockrate 64000
!
router bgp 100
 no synchronization
 network 10.10.10.0 mask 255.255.255.0
 neighbor 172.16.0.2 remote-as 200
 no auto-summary
!
ip classless
ip route 0.0.0.0 0.0.0.0 172.16.0.2
!
line vty 0 4
 password cisco
 login
!
end


●Router_Bの設定
!
version 11.2
no service udp-small-servers
no service tcp-small-servers
!
hostname Router_B
!
enable password cisco
!
interface Serial0
 ip address 172.16.0.2 255.255.0.0
!
interface Serial1
 ip address 172.17.0.1 255.255.0.0
 clockrate 64000
!
router bgp 200
 no synchronization
 neighbor 172.16.0.1 remote-as 100
 neighbor 172.17.0.2 remote-as 200
 no auto-summary
!
ip classless
!
line vty 0 4
 password cisco
 login
!
end


●Router_Cの設定
!
version 11.2
no service udp-small-servers
no service tcp-small-servers
!
hostname Router_C
!
enable password cisco
!
interface Serial0
 ip address 172.17.0.2 255.255.0.0
!
router bgp 200
 no synchronization
 neighbor 172.17.0.1 remote-as 200
 no auto-summary
!
ip classless
!
line vty 0 4
 password cisco
 login
!
end


各ルータのルーティングテーブルを確認してみます。

●Router_Aのルーティングテーブル
Gateway of last resort is 172.16.0.2 to network 0.0.0.0

     10.0.0.0/24 is subnetted, 1 subnets
C       10.10.10.0 is directly connected, Ethernet0
C    172.16.0.0/16 is directly connected, Serial0
S*   0.0.0.0/0 [1/0] via 172.16.0.2

●Router_Bのルーティングテーブル
Gateway of last resort is not set

     10.0.0.0/24 is subnetted, 1 subnets
B       10.10.10.0 [20/0] via 172.16.0.1, 00:13:22
C    172.16.0.0/16 is directly connected, Serial0
C    172.17.0.0/16 is directly connected, Serial1

●Router_Cのルーティングテーブル
Gateway of last resort is not set

C    172.17.0.0/16 is directly connected, Serial0

Router_Bでは、BGPによる「10.10.10.0」の経路があります。

Router_Cでは、BGPによる「10.10.10.0」の経路がありません。


Router_Cで、BGPテーブルを確認します。

Router_C#show ip bgp
BGP table version is 1, local router ID is 172.17.0.2
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop          Metric LocPrf Weight Path
* i10.10.10.0/24    172.16.0.1             0    100      0 100 i

上の黄色の網掛けを見て下さい。黄色の網掛け部分から以下のことが分かります。

「*」は、「10.10.10.0/24」の経路情報が、有効であることを示していますが、「>」が付いていない。

「10.10.10.0/24」の前に「i」が表示されていることから、iBGPで学習している。

つまり、「10.10.10.0/24」は、ベストパスではないことを示しています。

「10.10.10.0/24」の経路情報をBGPで受け取っているが、ルーティングテーブルに反映させていません。

Router_Cにおいて、「10.10.10.0/24」の「Next Hop」が「172.16.0.1」になっています。

iBGPで経路情報を送る時には、「Next Hop」を変更しないのです。

その為、Router_Cでは、「Next Hop」に到達できず、ルーティングテーブルに反映されません。

 「BGP(基本設定 ベストパスの確認 その2)」では、Router_Cに以下の静的ルートを加えることでこの問題しましたが、ここでは、違うアプローチでこの問題を解決します。

Router_C(config)#ip route 172.16.0.0 255.255.0.0 172.17.0.1

そもそも、この問題が起こったのは、Router_Bが、「Next Hop」を変更しなかったからです。

 もしも、Router_Bが、eBGPで学習した「10.10.10.0/24」経路の「Next Hop」を自分のインタフェースである「172.17.0.1」に変更してRouter_Cに通知してくれていたら、この問題は、起こらなかったはずです。

 そこで、AS200のRouter_Cへのピア設定に加え、neighbor コマンドで、「next-hop-self」オプションを指定します。

Router_B(config)#router bgp 200
Router_B(config-router)#neighbor 172.17.0.2 remote-as 200
Router_B(config-router)#neighbor 172.17.0.2 next-hop-self

設定の反映を早めるために、「clear ip bgp *」で確立しているBGPピアをリセットします。

Router_C#clear ip bgp *

しばらく待ってから(直ぐに反映されます)

Router_Cで、BGPテーブルを確認します。

Router_C#sh ip bgp
BGP table version is 2, local router ID is 172.17.0.2
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop          Metric LocPrf Weight Path
*>i10.10.10.0/24    172.17.0.1             0    100      0 100 i

「Next Hop」が、「172.17.0.1」に変わり、「10.10.10.0/24」の左側に「>」が付いてベストパスになりました。

再度、Router_Cのルーティングテーブルを確認してみます。

Gateway of last resort is not set

     10.0.0.0/24 is subnetted, 1 subnets
B       10.10.10.0 [200/0] via 172.17.0.1, 00:03:29
C    172.17.0.0/16 is directly connected, Serial0

ルーティングテーブルに、BGPによる「10.10.10.0/24」のルートが追加されました。

 このように、neighbor コマンドで、「next-hop-self」オプションを指定することで、自分のインタフェースを「Next Hop」として通知させることができます。

次の「BGP(基本設定 iBGPの設定 その5)」では、iBGPの設定方法を紹介します。

BGPの基本設定 1011



<ネットワーク資格の練習問題に挑戦>
CCNA練習問題に挑戦!(650問)
Network+練習問題に挑戦!(393問)
テクニカルエンジニア(ネットワーク)試験
◆Cisco実機で学ぶ(CCNAルータ編)

ルータの概要・基本操作・設定1 (17項目)
ルータの概要・基本操作・設定3 (22項目)
IGRP・EIGRPの設定 (18項目)
アクセスリスト・ACLの設定 (14項目)
NAT・DHCPの設定 (8項目)
ルータの概要・基本操作・設定2 (17項目)
RIPv1・RIPv2の設定 (14項目)
OSPFの設定・デフォルトルートの伝播(16項目)
WANの設定 (10項目)
◆Cisco実機で学ぶ(CCNAスイッチ編)

スイッチの基本操作・設定 (14項目)
VTP・スパニングツリーの設定 (12項目)
MACアドレスの管理・VLANの設定 (12項目)

◆アライドテレシス実機で学ぶ

基本操作・設定 (11項目)
OSPFの設定 (9項目)
ポリシールーティング・VRRPなど (12項目)
VLAN・マルチホーミング・RIPの設定 (10項目)
STP・ポートトランキングなど (14項目)
<関連コンテンツ>
◆Cisco実機で学ぶ(CCNP)

BGPとは
BGP(基本設定 その1)
BGP(基本設定 iBGP・eBGP確認 その3)
BGP(基本設定 iBGPの設定 その5)
BGP(基本設定 iBGPの設定 その7)
BGP(基本設定 ループバックでピア その9)
BGP(基本設定 iBGPとIGP その11)
BGP(経路決定プロセスの確認 その1)
BGP(同期化とは)
BGP(同期化の設定 その2)
BGP(eBGPマルチホップ その2)
BGPルートの生成(IGPから再配送 その1)
BGPルートの生成(経路集約 その1)
BGPルートの生成(経路集約 その3)
iBGPで学習した経路は他のiBGPへ流さない
BGP(ルートリフレクションとは)
BGP(ルートリフレクションの確認)
BGP(複数のルートリフレクタの設定)
BGP(コンフェデレーションとは)
BGP(コンフェデレーションの確認 その1)
BGP(コミュニティとは)
BGP(コミュニティの確認)
BGP(バックドア その1)
BGP(バックドア その3)
BGP(ピアグループの設定 その1)
BGP(ピアグループの確認)
BGP(Local Preferenceの設定 その1)
BGP(Local Preferenceの確認)
BGP(MED属性の設定 その1)
BGP(MED属性の確認)
BGP(AS_PATH属性 その1)
BGP(AS_PATH属性 その3)
BGP(AS_PATHフィルタ・filter-list その2)
BGP(配布リスト・distribute-list その1)
BGP(配布リスト・distribute-list その3)
BGP(PREFIXフィルタ その2)
BGP(近隣関係の形成)
BGP(基本設定 ベストパスの確認 その2)
BGP(基本設定 next-hop-self その4)
BGP(基本設定 iBGPの設定 その6)
BGP(基本設定 ループバックでピア その8)
BGP(基本設定 iBGPとIGP その10)
BGP(経路決定プロセス)
BGP(経路決定プロセスの確認 その2)
BGP(同期化の設定 その1)
BGP(eBGPマルチホップ その1)
BGPルートの生成(networkコマンド)
BGPルートの生成(IGPから再配送 その2)
BGPルートの生成(経路集約 その2)
BGPルートの生成(経路集約 その4)
BGP(iBGPはフルメッシュでピアを張る)
BGP(ルートリフレクションの設定)
BGP(複数のルートリフレクタ)
BGP(複数のルートリフレクタの確認)
BGP(コンフェデレーションの設定)
BGP(コンフェデレーションの確認 その2)
BGP(コミュニティの設定)
BGP(ORIGINアトリビュート)
BGP(バックドア その2)
BGP(ピアグループとは)
BGP(ピアグループの設定 その2)
BGP(Local Preference属性とは)
BGP(Local Preferenceの設定 その2)
BGP(MED属性とは)
BGP(MED属性の設定 その2)
BGP(帯域幅・bandwidthを設定する)
BGP(AS_PATH属性 その2)
BGP(AS_PATHフィルタ・filter-list その1)
BGP(AS_PATHフィルタ・filter-list その3)
BGP(配布リスト・distribute-list その2)
BGP(PREFIXフィルタ その1)
BGP(PREFIXフィルタ その3)
<関連メニュー>
CCNA実機で学ぶ
CCNP実機で学ぶ
アライドテレシス実機で学ぶ
TCP/IP入門・無料ネットワークツール

Copyright(c)2006- @network Cisco・アライド実機で学ぶ All rights reserved.