サービスの改善にご協力お願いします。

お客様のご意見をお聞かせください。

アンケートの所要時間はおよそ 2 分です。

header-navigation
keyboard_arrow_up
close
keyboard_arrow_left
BGPユーザーガイド
Table of Contents Expand all
list Table of Contents

この機械翻訳はお役に立ちましたでしょうか?

starstarstarstarstar
Go to English page
免責事項:

このページは、サードパーティー製機械翻訳ソフトウェアを使用して翻訳されます。質の高い翻訳を提供するために合理的な対応はされていますが、ジュニパーネットワークスがその正確性を保証することはできかねます。この翻訳に含まれる情報の正確性について疑問が生じた場合は、英語版を参照してください. ダウンロード可能なPDF (英語版のみ).

BGP ルート認証

date_range 19-Jan-25

BGP のルーター認証について

ルーターとルートの認証とルートの整合性を使用すると、誤ったルーティング情報を他のルーターと共有するように構成されたマシンまたはルーターによる攻撃を受けるリスクが大幅に軽減されます。この種の攻撃では、攻撃されたルーターがだまされてルーティングループを作成させたり、攻撃されたルーターのルーティングテーブルを大幅に増やしてパフォーマンスに影響を与えたり、ルーティング情報を攻撃者が分析できるようにネットワーク内の場所にリダイレクトしたりする可能性があります。セグメントで偽の経路広告を送信することができます。これらの更新は、ルートの送信元を確認するための認証メカニズムがない限り、ネイバールーターのルーティングテーブルに受け入れられます。

ルーターとルートの認証により、ルーターは、パスワード(鍵)に基づいて信頼できる送信元と通信していることを確認できる場合にのみ、情報を共有できます。この方法では、ハッシュされたキーがルートとともに別のルーターに送信されます。受信側ルーターは、送信されたキーを自身で設定されたキーと比較します。それらが同じである場合、ルートを受け入れます。ハッシュ アルゴリズムを使用すると、キーはプレーン テキストでネットワーク経由で送信されません。代わりに、設定されたキーを使用してハッシュが計算されます。ルーティング更新は、キーとともにハッシュ関数への入力テキストとして使用されます。このハッシュは、ルート更新とともに受信ルーターに送信されます。受信側ルーターは、受信したハッシュを、設定された事前共有鍵を使用してルート更新時に生成するハッシュと比較します。2 つのハッシュが同じ場合、ルートは信頼できる送信元からのものと見なされます。キーは、送信ルーターと受信ルーターのみが認識します。

セキュリティをさらに強化するために、一連の認証キー( キーチェーン)を設定できます。各キーには、キーチェーン内で一意の開始時間があります。キーチェーン認証を使用すると、ピアリングセッションを停止せずにパスワード情報を定期的に変更できます。このキーチェーン認証方法は、ピアリングセッションをリセットしたり、ルーティングプロトコルを中断したりすることなく、キーがロールオーバーされるため、 ヒットレス と呼ばれます。

送信ピアは、以下のルールを使用して、アクティブな認証キーを識別します。

  • 開始時刻が現在の時刻以下である (つまり、将来ではない)。

  • 開始時刻は、開始時刻が現在の時刻より短い (つまり、現在の時刻に最も近い) チェーン内の他のすべてのキーの時刻よりも大きくなります。

受信ピアは、着信鍵識別子に基づいて、認証に使用する鍵を決定します。

送信ピアは、設定された開始時間に基づいて現在の認証キーを識別し、現在のキーを使用してハッシュ値を生成します。次に、送信ピアは、TCP拡張認証オプションオブジェクトをBGPアップデートメッセージに挿入します。オブジェクトには、オブジェクト ID (IANA によって割り当てられる)、オブジェクトの長さ、現在のキー、およびハッシュ値が含まれています。

受信ピアは、受信する TCP 拡張認証オプションを調べ、受信した認証鍵を検索し、開始時刻、システム時刻、および tolerance パラメーターに基づいて鍵が受け入れ可能かどうかを判別します。鍵が受け入れられると、受信ピアはハッシュを計算し、更新メッセージを認証します。

キーチェーンを TCP セッションに初めて適用すると、セッションがリセットされます。ただし、キーチェーンが適用されると、キーチェーンにパスワードを追加または削除しても、TCP セッションはリセットされません。また、キーチェーンが認証アルゴリズムから別の認証アルゴリズムに変更されても、TCP セッションはリセットされません。

TCP認証

通常、TCP 認証は次の階層レベルで構成します。

  • [edit protocols bgp]

  • [edit protocols bgp group group-name]

  • [edit protocols bgp group group-name neighbor address]

TCP 認証とプレフィックス サブネット

Junosデバイスは、BGPグループで設定された許可されたプレフィックスサブネットを介して検出されるBGPピアへのTCP認証をサポートします。

BGPセッションのTCP-AOまたはTCP MD5のプレフィックスベースの認証を設定するには、以下の階層で allow (all | prefix-list) ステートメントを設定します。

  • [edit protocols bgp group group-name]

  • [edit protocols bgp group group-name dynamic-neighbor dyn-name]

TCP認証の詳細については、TCPを参照してください。

例:BGP のルーター認証の設定

すべてのBGPプロトコル交換を認証することで、信頼済みのルーティングデバイスだけが自律システム(AS)ルーティング更新に参加することを保証できます。デフォルトでは認証は無効になっています。

要件

開始する前に、以下を実行します。

  • ルーター・インターフェイスを設定します。

  • 内部ゲートウェイプロトコル(IGP)を設定します。

概要

認証を構成すると、アルゴリズムによってエンコードされたチェックサムが作成され、それが送信されるパケットに含まれます。受信側のルーティング デバイスは、認証キー(パスワード)を使用してパケットのチェックサムを検証します。

この例には、キーチェーンの設定と適用に関する次のステートメントが含まれています。

  • key- キーチェーンは複数のキーを持つことができます。キーチェーン内の各キーは、一意の整数値で識別される必要があります。有効な識別子値の範囲は 0 から 63 です。

    キーの長さは最大 126 文字です。文字には任意のASCII文字列を含めることができます。スペースを含む場合、すべての文字を引用符(" ")で囲んでください。

  • tolerance—(オプション)キーチェーンごとに、クロックスキューの許容値を秒単位で設定できます。クロックスキューの許容範囲は、BGP 更新の鍵を受け入れる受信側に適用されます。設定可能な範囲は 0 から 999,999,999 秒です。許容期間中は、現在のパスワードまたは以前のパスワードのいずれかを使用できます。

  • key-chain- キーチェーンごとに、名前を指定する必要があります。この例では、1 つのキーチェーンを定義します。bgp-auth. ルーティングデバイスに複数のキーチェーンを設定できます。例えば、BGP 用のキーチェーン、OSPF 用のキーチェーン、LDP 用のキーチェーンを作成することができます。

  • secret- キーチェーン内のキーごとに、秘密のパスワードを設定する必要があります。このパスワードは、 secret ステートメントに暗号化またはプレーンテキスト形式で入力できます。常に暗号化された形式で表示されます。

  • start-time- 各キーで開始時刻を UTC 形式で指定する必要があります。制御は 1 つのキーから次のキーに渡されます。(ルーティングデバイスのクロックに基づいて)設定された開始時刻が到来すると、その開始時刻を持つキーがアクティブになります。開始時刻は、ルーティングデバイスのローカルタイムゾーンで指定され、キーチェーン内で一意である必要があります。

  • authentication-key-chain- すべてのピア、グループ、またはネイバーに対して、グローバルBGPレベルでキーチェーンを適用できます。この例では、 ext という外部 BGP(EBGP)グループで定義されているピアにキーチェーンを適用します。

  • authentication-algorithm- キーチェーンごとに、ハッシュアルゴリズムを指定できます。アルゴリズムには、AES-128、MD5、または SHA-1 のいずれかを指定できます。

    キーチェーンと認証アルゴリズムを BGP 隣接セッションに関連付けます。

この例では、 bgp-auth という名前のキーチェーンを設定します。キー 0 は、2011-6-23.20:19:33 -0700 から送信および承認され、キーチェーン内の次のキー (キー 1) がアクティブになると送信および承認を停止します。キー 1 は 1 年後の 2012-6-23.20:19:33 -0700 にアクティブになり、キー 1 の開始時刻より後の開始時刻で別のキーが構成されていない限り、送信と受け入れを停止しません。30 秒のクロック スキュー許容誤差は、鍵を受け入れるレシーバーに適用されます。許容期間中は、現在のキーまたは前のキーのいずれかを使用できます。キーは共有秘密パスワードです。つまり、認証されたルーティング更新を受信するネイバーは、同じキー(パスワード)を含め、同じ認証キーチェーン設定を持っている必要があります。そのため、ルーター R0 とルーター R1 がピアとして設定されている場合は、同じ認証キーチェーン設定が必要です。この例では、1つのルーティング・デバイスでの設定のみを示しています。

トポロジー図

図 1 この例で使用されているトポロジーを示しています。

図 1: BGP の認証BGP の認証

設定

CLIクイック構成

この例をすばやく設定するには、次のコマンドをコピーしてテキストファイルに貼り付け、改行を削除して、ネットワーク構成に合わせて必要な詳細を変更し、[edit]階層レベルのCLIにコマンドをコピー&ペーストしてください。

content_copy zoom_out_map
set protocols bgp group ext type external 
set protocols bgp group ext peer-as 65530 
set protocols bgp group ext neighbor 172.16.2.1  
set routing-options autonomous-system 65533
set protocols bgp group ext authentication-key-chain bgp-auth 
set protocols bgp group ext authentication-algorithm md5
set security authentication-key-chains key-chain bgp-auth tolerance 30
set security authentication-key-chains key-chain bgp-auth key 0 secret this-is-the-secret-password
set security authentication-key-chains key-chain bgp-auth key 0 start-time 2011-6-23.20:19:33-0700
set security authentication-key-chains key-chain bgp-auth key 1 secret this-is-another-secret-password
set security authentication-key-chains key-chain bgp-auth key 1 start-time 2012-6-23.20:19:33-0700

手順

ステップバイステップでの手順

次の例では、設定階層内のさまざまなレベルに移動する必要があります。CLIのナビゲーションについては、Junos OS CLIユーザーガイド設定モードでCLIエディターを使用する を参照してください。

ルーターR1がデバイスCE1からのルート・フィルターを受信し、受信したフィルターを使用してアウトバウンド・ルート・フィルタリングを実行するように設定するためには:

  1. ローカルの自律システムを設定します。

    content_copy zoom_out_map
    [edit routing-options]
    user@R1# set autonomous-system 65533
    
  2. 1 つ以上の BGP グループを設定します。

    content_copy zoom_out_map
    [edit protocols bgp group ext]
    user@R1# set type external
    user@R1# set peer-as 65530 
    user@R1# set neighbor 172.16.2.1  
    
  3. 複数のキーを使用した認証を構成します。

    content_copy zoom_out_map
    [edit security authentication-key-chains key-chain bgp-auth]
    user@R1# set key 0 secret this-is-the-secret-password
    user@R1# set key 0 start-time 2011-6-23.20:19:33-0700
    user@R1# set key 1 secret this-is-another-secret-password
    user@R1# set key 1 start-time 2012-6-23.20:19:33-0700
    

    各キーの開始時刻は、キーチェーン内で一意である必要があります。

  4. 認証キーチェーンを BGP に適用し、ハッシュアルゴリズムを設定します。

    content_copy zoom_out_map
    [edit protocols bgp group ext]
    user@R1# set authentication-key-chain bgp-auth 
    user@R1# set authentication-algorithm md5
    
  5. (オプション)クロックスキュー許容値を秒単位で適用します。

    content_copy zoom_out_map
    [edit security authentication-key-chains key-chain bgp-auth]
    user@R1# set tolerance 30
    
結果

コンフィギュレーションモードから、show protocolsshow routing-options、、およびの各コマshow securityンドを入力し、コンフィギュレーションを確認します。出力結果に意図した設定内容が表示されない場合は、この例の手順を繰り返して設定を修正します。

content_copy zoom_out_map
user@R1# show protocols
bgp {
    group ext {
        type external;
        peer-as 65530;
        neighbor 172.16.2.1;
        authentication-key-chain bgp-auth;
        authentication-algorithm md5;
    }
}
content_copy zoom_out_map
user@R1# show routing-options
autonomous-system 65533;
content_copy zoom_out_map
user@R1# show security
authentication-key-chains {
    key-chain bgp-auth {
        tolerance 30;
            key 0 {
            secret $ABC123$ABC123
            start-time “2011-6-23.20:19:33 -0700”; 
        }
        key 1 {
            secret $ABC123$ABC123
            start-time “2012-6-23.20:19:33 -0700”;
        }
    }
}

デバイスの設定が完了したら、設定モードから commit を入力します。

BGP 対応デバイスごとに適切なインターフェイス名とアドレスを使用して、ネットワーク内のすべての BGP 対応デバイスを対象に、この手順を繰り返します。

検証

設定が正常に機能していることを確認します。

ネイバーの認証の確認

目的

show bgp neighbor コマンドの出力に [AutheKeyChain] オプションが表示されていることを確認します。

アクション

動作モードからshow bgp neighborコマンドを入力します。

content_copy zoom_out_map
user@R1> show bgp neighbor
Peer: 172.16.2.1+179 AS 65530  Local: 172.16.2.2+1222 AS 65533
  Type: External    State: Established    Flags: <Sync>
  Last State: OpenConfirm   Last Event: RecvKeepAlive
  Last Error: None
  Export: [ direct-lo0 ]
  Options: <Preference PeerAS Refresh>
  Options: <AutheKeyChain>
  Authentication key is configured
  Authentication key chain: jni
  Holdtime: 90 Preference: 170
  Number of flaps: 0
  Peer ID: 172.16.2.1       Local ID: 10.255.124.35    Active Holdtime: 90
  Keepalive Interval: 30         Peer index: 0
  Local Interface: fe-0/0/1.0
  NLRI advertised by peer: inet-unicast
  NLRI for this session: inet-unicast
  Peer supports Refresh capability (2)
  Table inet.0 Bit: 10000
    RIB State: BGP restart is complete
    Send state: in sync
    Active prefixes:              2
    Received prefixes:            2
    Suppressed due to damping:    0
    Advertised prefixes:          1
  Last traffic (seconds): Received 2    Sent 2    Checked 2
  Input messages:  Total 21     Updates 2       Refreshes 0     Octets 477
  Output messages: Total 22     Updates 1       Refreshes 0     Octets 471
  Output Queue[0]: 0

認証メッセージが送信されたことを確認する

目的

BGP に拡張認証オプションがあることを確認します。

アクション

動作モードからmonitor traffic interface fe-0/0/1コマンドを入力します。

content_copy zoom_out_map
user@R1> monitor traffic interface fe-0/0/1
verbose output suppressed, use <detail> or <extensive> for full protocol decode
Listening on fe-0/0/1, capture size 96 bytes

13:08:00.618402  In arp who-has 172.16.2.66 tell 172.16.2.69
13:08:02.408249 Out IP 172.16.2.2.1122 > 172.16.2.1.646: P
1889289217:1889289235(18) ack 2215740969 win 58486 <nop,nop,timestamp 167557
1465469,nop,Enhanced Auth keyid 0 diglen 12 digest: fe3366001f45767165f17037>:
13:08:02.418396  In IP 172.16.2.1.646 > 172.16.2.2.1122: P 1:19(18) ack 18 win
57100 <nop,nop,timestamp 1466460 167557,nop,Enhanced Auth keyid 0 diglen 12
digest: a18c31eda1b14b2900921675>:
13:08:02.518146 Out IP 172.16.2.2.1122 > 172.16.2.1.646: . ack 19 win 58468
<nop,nop,timestamp 167568 1466460,nop,Enhanced Auth keyid 0 diglen 12 digest:
c3b6422eb6bd3fd9cf79742b>
13:08:28.199557 Out IP 172.16.2.2.nerv > 172.16.2.1.bgp: P
286842489:286842508(19) ack 931203976 win 57200 <nop,Enhanced Auth keyid 0
diglen 12 digest: fc0e42900a73736bcc07c1a4>: BGP, length: 19
13:08:28.209661  In IP 172.16.2.1.bgp > 172.16.2.2.nerv: P 1:20(19) ack 19 win
56835 <nop,Enhanced Auth keyid 0 diglen 12 digest: 0fc8578c489fabce63aeb2c3>:
BGP, length: 19
13:08:28.309525 Out IP 172.16.2.2.nerv > 172.16.2.1.bgp: . ack 20 win 57181
<nop,Enhanced Auth keyid 0 diglen 12 digest: ef03f282fb2ece0039491df8>
13:08:32.439708 Out IP 172.16.2.2.1122 > 172.16.2.1.646: P 54:72(18) ack 55 win
58432 <nop,nop,timestamp 170560 1468472,nop,Enhanced Auth keyid 0 diglen 12
digest: 76e0cf926f348b726c631944>:
13:08:32.449795  In IP 172.16.2.1.646 > 172.16.2.2.1122: P 55:73(18) ack 72 win
57046 <nop,nop,timestamp 1469463 170560,nop,Enhanced Auth keyid 0 diglen 12
digest: dae3eec390d18a114431f4d8>:
13:08:32.549726 Out IP 172.16.2.2.1122 > 172.16.2.1.646: . ack 73 win 58414
<nop,nop,timestamp 170571 1469463,nop,Enhanced Auth keyid 0 diglen 12 digest:
851df771aee2ea7a43a0c46c>
13:08:33.719880  In arp who-has 172.16.2.66 tell 172.16.2.69
^C
35 packets received by filter
0 packets dropped by kernel

認証エラーのチェック

目的

認証エラーが原因で TCP によってドロップされたパケットの数を確認します。

アクション

動作モードからshow system statistics tcp | match authコマンドを入力します。

content_copy zoom_out_map
user@R1> show system statistics tcp | match auth
        0 send packets dropped by TCP due to auth errors
        58 rcv packets dropped by TCP due to auth errors

キーチェーンの動作確認

目的

認証エラーが原因で TCP によってドロップされたパケットの数を確認します。

アクション

動作モードからshow security keychain detailコマンドを入力します。

content_copy zoom_out_map
user@R1> show security keychain detail
keychain                 Active-ID       Next-ID       Transition  Tolerance
                       Send  Receive   Send  Receive 
 bgp-auth                3     3        1     1        1d 23:58    30    
  Id 3, Algorithm hmac-md5, State send-receive, Option basic
  Start-time Wed Aug 11 16:28:00 2010, Mode send-receive
  Id 1, Algorithm hmac-md5, State inactive, Option basic
  Start-time Fri Aug 20 11:30:57 2010, Mode send-receive  

変更履歴

サポートされる機能は、使用しているプラットフォームとリリースによって決まります。 特定の機能がお使いのプラットフォームでサポートされているかどうかを確認するには、 Feature Explorer をご利用ください。

リリース
説明
22.4R1
Junos OS Evolved Release 22.4R1以降、IPサブネットでTCP-AOまたはTCP MD5認証を構成して、そのサブネットの下にアドレス全体を含めることができます。
22.4R1
Junos OS Evolved Release 22.4R1以降、TCP認証はVRF認識です。
19.1R1
Junos OS リリース 19.1R1 以降、Junos OS は、BGP グループで設定された許可されたプレフィックス サブネットを介して検出された BGP ピアに TCP 認証のサポートを拡張します。
footer-navigation