BGP-4 設定ガイド

$Date: 2023/07/06 20:22:18 $

1. 全般的な設定

BGP-4を使用するためには、bgp useコマンドを設定する必要があります。 このコマンドを設定しない限り、BGP-4は動作しないので注意してください。

  # bgp use on

次に、このルータが属するAS番号を設定します。このためには、 bgp autonomous-systemコマンドを使用します。 このコマンドで設定できるAS番号は1つだけです。つまり、 1つのルータが複数のASに属することはできません。

  # bgp autonomous-system 65480

BGPでは、ルータを識別するために、ルータIDという識別子を送受信します。 ルータIDには、ルータのIPアドレスを設定します。このIPアドレスは、 実際にルータのインタフェースに設定されているものにしてください。

  # bgp router id 192.168.0.1

このコマンドを設定しないときには、以下のインタフェースに付与されている プライマリIPアドレスのいずれかが自動的に選択され、ルータIDとして使用されます。

しかし、意図しないIPアドレスがルータIDとして使用されることを防ぐため、明示的にルータIDを指定することを推奨します。

OSPFとBGP-4とを併用する場合には、bgp router idコマンドかospf router idコマンドのいずれか一方を設定します。
以下のファームウェアでは、bgp router idコマンドとospf router idコマンドの両方を設定することができますが、必ず同一のルータIDを指定するようにしてください。

機種ファームウェア
vRX VMware ESXi版すべてのリビジョン
vRX Amazon EC2版
RTX3510
RTX1300
RTX1220
RTX830
NVR700W
RTX1210Rev.14.01.16以降
RTX5000Rev.14.00.21以降
RTX3500
FWX120Rev.11.03.22以降

2. 近隣ルータの設定

BGP-4で通信する相手のルータを定義します。このためには、 bgp neighborコマンドを用います。

  # bgp neighbor 1 65500 192.168.0.2

この例では、IPアドレスが192.168.0.2で 65500というAS番号を持つルータとの間で、BGP-4のコネクションを接続します。 最初の1という引数は、近隣ルータの識別子であり、 1以上の整数を自由に選ぶことができます。

ピア間の通信に TCP MD5 認証を使用したい場合は、bgp neighbor pre-shared-keyコマンドを使用します。

  # bgp neighbor pre-shared-key 1 text password

両端のルータで、同じ事前共有鍵を設定します。

3. 経路に対するフィルタリング

RIPやOSPFのようなBGP-4以外の経路をBGP-4で広告するときには、 bgp import filterコマンドとbgp importコマンドを使って、 経路をフィルタリングすることができます。 例えば、次のように設定すると、 172.16.1.0/24宛てのRIPの経路をBGP-4に導入することができます。

  # bgp import filter 1 equal 172.16.1.0/24
  # bgp import 65500 rip filter 1

また、 bgp exportコマンドを使うと、 BGP-4が受けた経路に対してフィルタリングをかけることができます。 このコマンドで受理された経路だけが、実際のルーティングに使われたり、 OSPFやRIPで広告されます。 bgp exportコマンドの設定例は以下のとおりです。

  # bgp export filter 1 equal 172.16.1.0/24
  # bgp export 65500 filter 1

この例ではBGP-4が受けた172.16.1.0/24の経路を ルーティングテーブルに取り入れます。

bgp import filterコマンドでも、bgp export filterコマンドでも、 ネットワークを指定する代わりにallというキーワードを 指定することができます。all0.0.0.0/0と同じ意味になります。

4. 経路の集約

経路の集約をするためには、まず、 bgp aggregate filterコマンドで、 集約の対象となる経路を指定します。 例えば、192.168.0.0/24と192.168.1.0/24の範囲内の静的経路を集約したいときには、 以下のように設定します。

  # bgp aggregate filter 1 static include 192.168.0.0/24
  # bgp aggregate filter 2 static include 192.168.1.0/24

次に、bgp aggregateコマンドで、 上の経路をどのように集約するかを設定します。 例えば、192.168.0.0/23に集約するためには、次のように設定します。

  # bgp aggregate 192.168.0.0/23 filter 1 2

さらに、集約経路を広告するために、 bgp importコマンドを設定します。これは、 前述と同じ要領ですが、プロトコルはaggregateになります。

  # bgp import filter 1 equal 192.168.0.0/23
  # bgp import 65500 aggregate filter 1

5. 設定の有効化

すべての項目を設定したら、 最後にbgp configure refreshコマンドを実行します。 設定を変更したときには、このコマンドを実行するか、 ルータを再起動するまで、設定が有効にならないので注意してください。

  # bgp configure refresh

BGPがすでに動作している状態でこのコマンドを実行すると、 相手にCEASEメッセージを送信してから、再びコネクションを接続します。 この動作には1分以上の時間がかかることがあります。

なお、OSPFを併用している場合には、 bgp configure refreshコマンドを実行するときに、 OSPFの状態も初期化される点に注意してください。同様に、 ospf configure refreshコマンドを実行すると、OSPFの状態だけでなく、 BGPの状態も同時に初期化されます。 つまり、OSPFとBGPの状態を個別に初期化することはできません。

6. 状態の確認

BGP-4の状態を確認するために、 show status bgp neighborコマンドが用意されています。 このコマンドは接続相手の情報を表示します。

# show status bgp neighbor
        BGP neighbor is 192.168.0.2, remote AS 65500, local AS 65480, external link
          BGP version 4, remote router ID 192.168.0.2
          BGP state = Established, up for 60:23:06
          Last read 00:00:06, hold time is 30, keepalive interval is 10 seconds
          Received 22181 messages, 0 notifications, 0 in queue
          Sent 21743 messages, 0 notifications, 0 in queue
          Connection established 2; dropped 1
          Last reset 60:23:25
        Local host: 192.168.0.1, Local port: 179
        Foreign host: 192.168.0.2, Foreign port: 58850

関連ドキュメント