未分類

BGP4とは?バージョンの特徴と概要も解説!(RFC 4271・現在の標準・機能・BGP-4の仕組みなど)

当サイトでは記事内に広告を含みます

BGPにはいくつかのバージョンが存在しますが、現在のインターネットで標準として使われているのがBGP4(BGP-4)です。

RFC 4271で定義されたこのバージョンは、インターネットの経路制御を支える中核的なプロトコルとして世界中で稼働しています。

この記事では、BGP4とは何か、過去のバージョンとの違い、RFC 4271で定められた機能や仕組みについてわかりやすく解説していきます。

ネットワークエンジニアの方やBGPの基礎を体系的に学びたい方にぜひ参考にしていただきたい内容です。

BGP4とは「現在のインターネットで標準として使われるBGPの最新バージョン」のこと

それではまず、BGP4とは何かについて解説していきます。

BGP4(BGP-4)とは、AS(自律システム)間の経路情報交換を行うBGPプロトコルの第4世代バージョンであり、現在のインターネットで事実上の標準として使われているルーティングプロトコルです。

1994年にRFC 1771として最初に定義され、その後2006年にRFC 4271として改訂・整備されました。

BGP4以前のバージョン(BGP1〜BGP3)はすでに使用されておらず、現在稼働しているBGPはすべてBGP4に基づいています。

BGP4とは:

インターネット上のAS間ルーティングを担うBGPの第4世代バージョン。

RFC 4271で標準化されており、現在のインターネット全体の経路制御を支える中核プロトコル。

BGP1〜BGP3との違い

BGPはバージョン1から始まり、段階的に機能が拡張されてBGP4に至っています。

BGP1・BGP2・BGP3はクラスフルルーティング(クラスA・B・Cに基づく固定的なサブネット)を前提とした設計でしたが、BGP4ではCIDR(Classless Inter-Domain Routing)に対応したことが最大の進化のひとつです。

CIDRへの対応により、任意のプレフィックス長を持つルートを扱えるようになり、IPアドレスの効率的な割り当てと経路集約が可能になりました。

この変更がBGP4を現在のインターネット規模に対応させる決定的な特徴となっています。

RFC 4271の位置づけ

RFC 4271は2006年に発行されたBGP4の標準仕様書で、BGPの動作・メッセージ形式・状態遷移・エラー処理などが詳細に定義されています。

それ以前のRFC 1771を廃止して改訂された文書であり、現在のBGP実装はすべてRFC 4271に準拠しています。

ネットワーク機器ベンダー(Cisco・Juniper・Arista等)のBGP実装もRFC 4271をベースとしており、相互接続性の基盤となっています。

BGP4の仕様を深く理解したい場合は、RFC 4271を参照することが最も正確な情報源となります。

BGP4の主な機能と仕組みを確認しよう

続いては、BGP4の主な機能と仕組みを確認していきます。

BGP4の動作を理解するうえで重要な要素を整理していきましょう。

機能・要素 内容
CIDR対応 任意のプレフィックス長の経路を扱える
パスアトリビュート AS Path・Next Hop・MEDなどの経路属性
TCPベースの通信 TCP179番ポートでセッションを確立
増分更新 変更分のみをUPDATEメッセージで送信
eBGP・iBGP AS間(eBGP)とAS内(iBGP)の経路交換

BGP4のメッセージ種別

BGP4ではピア間の通信に4種類のメッセージが使用されます。

OPEN・UPDATE・NOTIFICATION・KEEPALIVEの4種類が定義されており、それぞれが異なる役割を担っています。

OPENメッセージはBGPセッション確立時に交換される最初のメッセージで、AS番号・BGPバージョン・Hold Timeなどのパラメータを通知します。

UPDATEメッセージは経路情報の追加・削除を通知するメッセージで、パスアトリビュートとともに広報するプレフィックスの情報が含まれます。

BGP4のセッション確立の流れ

BGP4のセッション確立はTCPの3ウェイハンドシェイクから始まり、その後BGP固有のネゴシエーションが行われます。

BGP4セッション確立の流れ:

①TCP 179番ポートで接続確立(3ウェイハンドシェイク)

②OPENメッセージを交換してBGPパラメータをネゴシエーション

③KEEPALIVEメッセージを交換してセッションを確立(Established状態)

④UPDATEメッセージで経路情報を交換開始

セッションが確立するとEstablished状態に遷移し、以降はUPDATEメッセージで経路変更のみを増分通知する仕組みになっています。

Hold Timeで定義された間隔でKEEPALIVEメッセージが送受信され、セッションの維持が確認されます。

パスアトリビュートの役割

BGP4の経路制御の中心を担うのがパスアトリビュート(経路属性)です。

AS Path・Next Hop・Local Preference・MED・Communityなどのアトリビュートが定義されており、これらの値をもとにベストパスの選択と経路制御が行われます。

パスアトリビュートはWell-known(必須・任意)とOptional(推移的・非推移的)の2つの大きなカテゴリに分類されています。

アトリビュートの適切な設定が、BGP4による柔軟な経路ポリシーの実現に直結します。

BGP4の拡張機能とマルチプロトコル対応

続いては、BGP4の拡張機能とマルチプロトコル対応について確認していきます。

BGP4は基本仕様に加えて多くの拡張が定義されており、現代のネットワーク要件に対応しています。

MP-BGP(マルチプロトコルBGP)

MP-BGP(Multiprotocol BGP)はRFC 4760で定義されたBGP4の拡張機能で、IPv4以外のアドレスファミリーにも対応できるようにした仕組みです。

IPv6・VPNv4・VPNv6・L2VPNなど、さまざまなアドレスファミリーの経路情報をBGP4のセッション上で交換できるようになっています。

MPLS-VPNやBGP/MPLSを利用したサービスでは、MP-BGPが経路情報の配布に不可欠な役割を果たしています。

現代のISPや大規模エンタープライズネットワークではMP-BGPの活用が標準的になっています。

BGP4の拡張コミュニティとRoute Reflector

BGP4にはコミュニティアトリビュートという経路にタグを付与する仕組みがあり、経路ポリシーの柔軟な制御に活用されます。

拡張コミュニティ(Extended Community)はRFC 4360で定義されており、VPNルートのRouteDistinguisherやRouteTargetの伝達に使われています。

また、iBGP環境でのスケーラビリティを確保するためにRoute Reflector(RR)という仕組みが導入されており、フルメッシュのiBGPセッションが不要になります。

大規模ネットワークではRoute Reflectorの設計がBGP4の安定運用に大きく影響します。

RPKI(Resource Public Key Infrastructure)との連携

RPKI(Resource Public Key Infrastructure)はBGP4のセキュリティを強化するための仕組みで、IPプレフィックスとAS番号の対応関係を暗号的に検証します。

BGP4単体ではなりすましや誤広報を防ぐ仕組みが不十分でしたが、RPKIと組み合わせることで経路広報の正当性を検証するROV(Route Origin Validation)が実現できます。

近年インターネット上でのRPKI導入が急速に進んでおり、BGP4のセキュリティ強化の標準的なアプローチとなっています。

BGP4の運用にはRPKIの理解と導入検討も合わせて行うことが推奨されます。

まとめ

この記事では、BGP4の意味・RFC 4271の位置づけ・主な機能と仕組み・拡張機能について解説しました。

BGP4は現在のインターネットで標準として使われるBGPの第4世代バージョンであり、CIDR対応・パスアトリビュート・TCP179番ポートによるセッション管理などが主要な特徴です。

RFC 4271で詳細に定義されており、MP-BGPやRoute Reflector・RPKIなどの拡張機能と組み合わせることで現代の大規模ネットワーク要件に対応しています。

BGP4の仕組みを深く理解することは、インターネットのルーティング設計・運用・トラブルシューティングすべての基盤となります。

BGP4の知識をしっかり身につけて、ネットワーク運用の質をさらに高めていただければ幸いです。