BGP基本設定①

※Packet Tracer では、iBGPをサポートしていないため、BGPのごく一部の機能しか試すことができません。細かな機能の検証については、実機が必要です。ここでは、実機で検証した内容を紹介しています。

 検証に用いたルータは、Cisco2500シリーズのルータです。Cisco2500ルータは、中古で安く入手できるコストパフォーマンスに優れたルータです。

ここでは、BGPを使って下図のネットワークを構築します。

 BGPの設定は、様々な属性を与えて経路選択を操作することができるため、少々設定が複雑です。

もちろん、BGPの動作確認も行えます。

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

今回のBGPの基本設定では、以下のことを行います。

・AS100内の「10.10.10.0/24」のルートをAS200に通知する。

 AS100内では、AS200へはデフォルトルート「0.0.0.0」を使って到達するようにします。これは、BGPの設定を簡略化するためです。今回、AS100では、AS200内のルートを扱いません。BGPでは、BGPで経路を学習しても、IGPで学習するまで有効にしないBGP同期という機能があるためです。

BGPの設定の流れ

1.BGPプロセスを有効にする。

Router(config)#rotuer bgp {AS番号}

2.ピアを確立する近接ルータを指定する。

IGPのように自動でネイバーの登録は、行われません。管理者がネイバーの登録を行います。

Router(config-router)#neighbor {ピアを張るルータのIP} remote-as {AS番号}

3.通知する経路を指定する。

Router(config-router)#network {ネットワークIP} mask {サブネットマスク}

BGP同期の設定

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

※現在のIOSのバージョンではデフォルトで無効になっているため、以下のコマンドは必要ありません。

Router(config-router)#no synchronization

●Router_Aの設定

Router_AのBGPルーティングの設定は、以下のようになります。

Router_Aが所属するASは、100です。BGPのプロセスを100で指定します。

Router_A(config)#router bgp 100

次に、ピアを張るBGPスピーカーのIPアドレスを指定し、そのBGPスピーカーが所属するAS番号を指定します。

Router_A(config-router)#neighbor 172.16.0.2 remote-as 200

最後に、BGPで通知する経路情報を指定します。

Router_A(config-router)#network 10.10.10.0 mask 255.255.255.0
Router_A(config-router)#no auto-summary

●Router_Bの設定

Router_B(config)#router bgp 200
Router_B(config-router)#neighbor 172.16.0.1 remote-as 100
Router_B(config-router)#neighbor 172.17.0.2 remote-as 200
Router_B(config-router)#no auto-summary

●Router_Cの設定

Router_B(config)#router bgp 200
Router_B(config-router)#neighbor 172.17.0.1 remote-as 200
Router_B(config-router)#no auto-summary

各ルータの設定

それでは、ルータを設定してゆきます。各ルータの設定は、下のようになります。

 強制的にインタフェースを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_Aでは、デフォルトルートでAS200に到達するように設定しました。

Router_Bでは、BGPのルート「10.10.10.0」のルートがあります。

Router_Cでは、BGPによる「10.10.10.0」のルートがありません。

 今まで、RIP、IGRP、EIGRP、OSPFなどのルーティングプロトコルを設定してきましたが、BGPでは、ちょっと勝手が違います。

この続きは、「BGP基本設定(ベストパスの確認)②」で説明します。