このページの
例: ARP キャッシュ保護の設定
キャッシュ内の解決済みおよび未解決のネクスト ホップ エントリーに対して、ARP キャッシュ制限を設定できます。この例では、ARP キャッシュ内で解決済みおよび未解決のネクスト ホップ エントリーの最大カウントおよびホールド制限を指定して、ARP キャッシュ保護を設定する方法を示しています。この制限は、すべてのインターフェイスにグローバルで指定するか、デバイスの特定のインターフェイスでローカルに指定できます。ARP キャッシュにこのような制限を設定するメリットは、デバイスをリモート 攻撃(サービス拒否)DoSです。
要件
この例では、次のハードウェアとソフトウェアのコンポーネントを使用しています。
M、MX、およびルーターを組み合わせて使用できるT Seriesルーター。
ルーターに接続された2台のホストデバイス。
Junos OSで実行されているリリース16.1以降のリリース16.1以降。
概要
マルチアクセス ネットワークで IP パケットを送信するには、IP アドレスから物理またはハードウェア アドレスメディア アクセス制御(MAC)アドレスへのマッピングが必要です。イーサネット環境では、ARP は、パケットの IP アドレスMAC アドレスするために使用されます。ARP を使用するホストは、検出されたインターネットからイーサネットへのアドレス マッピングのキャッシュを維持して、ARP ブロードキャスト メッセージの数を最小限に抑える。
キャッシュのサイズが大きすぎるのを確認するために、一定時間内に使用されていないエントリーはキャッシュから削除されます。さらに、Junos OS リリース 16.1 から、解決済みおよび未解決のネクスト ホップ エントリーに対する制限を設定することで、ARP キャッシュ エントリー数を管理できます。
ARP キャッシュ機能では、次の 2 種類の制限をサポートしています。
カウント — カウント制限は、ARP キャッシュに作成できるネクスト ホップの最大数です。
保持 — ホールド制限は、ARP キャッシュに追加される前に保持できる特定のインターフェイスを指すホールド ルートの最大数です。
ARP キャッシュ制限は、次の 2 つのレベルで実行されます。
ローカル — インターフェイスごとにローカル制限が設定され、ARP キャッシュ内の解決済みおよび未解決エントリーに対して定義されます。
グローバル: グローバルな制限はシステム全体に適用されます。グローバル制限は、パブリック インターフェイスと管理インターフェイス(fxp0など)に対してさらに個別に定義されます。管理インターフェイスには、単一のグローバル制限とローカル制限はありません。グローバル制限では、内部ルーティング インスタンス(em0、em1など)のプライベート内部ルーティング インターフェイス(IR)など、ARPキャッシュのエントリーにシステム全体のキャップを適用します。
小規模プラットフォーム:ACX、EX22XX、EX3200、EX33XX、SRX、デフォルトは 20,000 です。中規模プラットフォーム:EX4200、EX45XX、EX4300、EX62XX、MX、デフォルトは 75,000 です。それ以外のプラットフォームはすべてデフォルトで 100,000 です。この制限は、ARP ネクスト ホップ キャッシュ保護機能を設定することで変更できます。
解決済みおよび未解決のネクスト ホップ エントリーに対して ARP
arp-system-cache-limit
キャッシュカウント制限をグローバルに設定するには、階層レベルに ステートメントを[edit system]
含める必要があります。解決済みおよび未解決のネクスト ホップ エントリーに対して ARP
arp-system-cache-limit
キャッシュカウント制限をローカルに設定するには、階層レベルに ステートメントを[edit interfaces interface-name unit interface-unit-number family inet]
含てます。未解決のネクスト ホップ エントリーに対して ARP
arp-new-hold-limit
キャッシュのホールド 制限をローカルに設定するには、階層レベルに ステートメントを[edit interfaces interface-name unit interface-unit-number family inet]
含める必要があります。メモ:ARP キャッシュのホールド 制限はインターフェイス単位でのみ設定され、システム レベルでは設定できません。
ARP キャッシュのネクスト ホップ エントリーは、ARP キャッシュ保護機能の設定に関係なく、さまざまなタイプのインターフェイスに割り当てされます。
デフォルトでは、200 件のエントリーが IR に割り当てされます。
残りの 80% はパブリック インターフェイスに割り当て
残りの 20% は管理インターフェイスに割り当てされます。
ARP ネクスト ホップ エントリーが設定済みのカウント制限を超えると、そのインターフェイスにホールド制限が設定されている場合、新しいエントリーは破棄するか、ホールド カウンターの下に保持されます。ARP ネクスト ホップホールド制限は、特定のインターフェイスを指すホールド エントリーの最大数または保持ルートを指定します。ホールド エントリーの数が設定されたホールド 制限を超えると、そのインターフェイスのドロップ カウンターは大幅に影響を受します。新しいホールド エントリーはループを作成し、対応する帯域幅が増えるまで増加し続けるのです。
インターフェイスのデフォルト ARP ネクスト ホップ キャッシュ制限を変更した後、新しく設定した値を有効にするために、インターフェイスを非アクティブ化し、再度有効化する必要があります。
トポロジ
図 1 は 、ARP キャッシュ保護が有効になっているシンプルな 2 ルーター トポロジーを示しています。ルーター R1 と R2 はそれぞれ、ホスト、ホスト 1、ホスト 2 にそれぞれ接続されています。

たとえば、ルーター R1 arp-system-cache-limit
がグローバルに 220 の 1 つの設定で設定され、エントリーを受信した最初のインターフェイス(ge-0/0/0 など)で 230 件の ARP エントリーを受信した場合、以下のアクションが実行されます。
230 件のエントリーを受信すると、システムにグローバル制限の 220 エントリーが適用され、設定制限はさまざまなタイプのインターフェイスで分割され、特定のインターフェースで受信した残りのエントリーは破棄されます。
デフォルトでは、キャッシュされた220項目のエントリーの中から、100(
残りの 20 エントリーの中から 80% のエントリー(16 のエントリー)がパブリック インターフェイスに送信され、エントリーの 20 パーセント(4 つのエントリー)が管理インターフェイスに送信されます。パブリック インターフェイスで230のARPエントリーを受信した場合は、16エントリーのキャッシュ制限のみ保持され、残りの214のエントリーは破棄されます。
さらに、ルーター R1 arp-new-hold-limit
の ge-0/0/0 が 8 の値で設定されている場合は、次のアクションが実行されます。
受信した 230 のエントリーの中から、ARP テーブルにキャッシュされるエントリーは 220 件のみです。しかし、残りのエントリーを破棄するのではなく、ホールド エントリーは ge-0/0/0 のホールド カウンターに送信され、残りのエントリーは ge-0/0/0 のドロップ カウンターに送信されます。
帯域幅の可用性に応じて、8 個のホールド エントリーは ge-0/0/0 の ARP テーブルにキャッシュされ、新しく受信したエントリを考慮します。
ge-0/0/0 のドロップ カウンターは、1 つのエントリで増加するわけではありません。ドロップ カウンターの破棄されたホールド エントリーはループを形成し、すべてのエントリーに対応するためにインターフェイスに帯域幅が発生するまでエントリー数に追加されます。そのため、ドロップ カウンターに追加すると、インターフェイスのパフォーマンスに大きな影響を及ぼす可能性があります。
構成
CLI迅速な設定
この例を迅速に設定するには、以下のコマンドをコピーして、テキスト ファイルに貼り付け、改行を削除し、ネットワーク設定に一致する必要がある詳細情報を変更し、 [edit] 階層レベルでコマンドを CLI にコピー アンド ペーストして、設定モードからコミットを入力します。
R1
set interfaces ge-0/0/0 unit 0 family inet address 192.0.2.1/24 set interfaces ge-0/0/0 unit 0 family inet arp-new-hold-limit 8 set interfaces ge-0/0/1 unit 0 family inet address 192.0.2.1/24 set interfaces lo0 unit 0 family inet address 10.10.10.1/32 set system arp-system-cache-limit 220
R2
set interfaces ge-0/0/0 unit 0 family inet address 192.0.2.2/24 set interfaces ge-0/0/1 unit 0 family inet address 192.0.2.1/24 set interfaces lo0 unit 0 family inet address 10.20.20.1/32
手順
手順
次の例では、設定階層内のさまざまなレベルに移動する必要があります。デバイスのナビゲーションについて詳しくは、 CLI モード でのCLIの使用 を参照してください。
ARP キャッシュ保護を使用してルーター R1 を設定するには、次の手順に示します。
ルーター R1 のインターフェイスを設定します。
[edit interfaces] user@R1# set ge-0/0/0 unit 0 family inet address 192.0.2.1/24 user@R1# set ge-0/0/1 unit 0 family inet address 192.0.2.1/24 user@R1# set lo0 unit 0 family inet address 10.10.10.1/32
ルーター R1 のすべてのインターフェイスに対して、ARP キャッシュ保護をグローバルに設定します。
[edit system] user@R1# set arp-system-cache-limit 220
ルーター R1 のインターフェイス ge-0/0/0 の ARP キャッシュ エントリーに制限を設定します。
[edit interfaces] user@R1# set ge-0/0/0 unit 0 family inet arp-new-hold-limit 8
結果
設定モードから、 および コマンドを入力して設定 show interfaces
を確認 show system
します。出力結果に意図した設定結果が表示されない場合は、この例の手順を繰り返して設定を修正します。
user@R1# show interfaces ge-0/0/0 { unit 0 { family inet { address 192.0.2.1/24; } } } ge-0/0/1 { unit 0 { family inet { address 192.0.2.1/24; } } } lo0 { unit 0 { family inet { address 10.10.10.1/32; } } }
user@R1# show system arp-system-cache-limit 220 ;
検証
設定が正常に機能されていることを確認します。
グローバル ARP ネクスト ホップ キャッシュ制限の検証
目的
システム全体の ARP ネクスト ホップ キャッシュの制限と、異なるインターフェイスへのネクスト ホップ エントリーの割り当てを検証します。
アクション
動作モードから コマンドを実行 show system statistics arp します。
user@R1> show system statistics arp arp: 717253 datagrams received 47 ARP requests received 31 ARP replies received 285 resolution request received 0 unrestricted proxy requests 0 restricted proxy requests 0 received proxy requests 0 unrestricted proxy requests not proxied ***** 220 Max System ARP nh cache limit 16 Max Public ARP nh cache limit 200 Max IRI ARP nh cache limit 4 Max Management intf ARP nh cache limit 16 Current Public ARP next-hops present 1 Current IRI ARP next-hops present 2 Current Management ARP next-hops present 2457 Total ARP next-hops creation failed as limit reached 2454 Public ARP next-hops creation failed as public limit reached 3 IRI ARP next-hops creation failed as iri limit reached 0 Management ARP next-hops creation failed as mgt limit reached
意味
出力には、グローバル ARP ネクスト ホップ キャッシュ制限と、グループ、パブリック、および管理インターフェイスへのネクスト ホップ エントリーの割り当てが表示されます。
ローカル ARP ネクスト ホップ キャッシュ制限の検証
目的
インターフェイス ARP ネクスト ホップ キャッシュ制限を検証します。
アクション
動作モードから コマンドを実行 show interfaces interface-name します。
user@R1> show interface fxp0 fxp0 Physical interface: fxp0, Enabled, Physical link is Up Interface index: 1, SNMP ifIndex: 1 Type: Ethernet, Link-level type: Ethernet, MTU: 1514, Speed: 100mbps Device flags : Present Running Interface flags: SNMP-Traps Link type : Full-Duplex Current address: 00:a0:a5:62:8e:39, Hardware address: 00:a0:a5:62:8e:39 Last flapped : 2014-10-16 10:23:29 PDT (16:27:21 ago) Input packets : 0 Output packets: 0 Logical interface fxp0.0 (Index 3) (SNMP ifIndex 13) Flags: Up SNMP-Traps Encapsulation: ENET2 Bandwidth: 0 Input packets : 23 Output packets: 4 Protocol inet, MTU: 1500 Max nh cache: 220 New hold nh limit: 8, Curr nh cnt: 2, Curr new hold cnt: 0, NH drop cnt: 0 Flags: Sendbcast-pkt-to-re, Is-Primary Addresses, Flags: Is-Default Is-Preferred Is-Primary Destination: 10.209.0/18, Local: 10.209.3.69, Broadcast: 10.209.63.255
意味
管理インターフェイスのローカルARPネクスト ホップ キャッシュ数とホールド制限が出力に表示されます。
トラブルシューティング
ARP キャッシュ保護設定のトラブルシューティングについては、以下を参照してください。
システム ログ メッセージのトラブルシューティング
問題
システム ログ メッセージは、ARP キャッシュの制限を超えたときにイベントを記録するために生成されます。
ソリューション
システム ログ メッセージを解釈するには、以下の情報を参照してください。
Feb 08 17:12:39 [TRACE] [R1]: Public intf soft (80%) arp nh cache limit reached—ルーター R1 は、パブリック インターフェイスで許容される ARP ネクスト ホップ キャッシュ制限の 80% に達しました。
Feb 08 17:07:43 [TRACE] [R1]: Public intf hard arp nh cache limit reached—ルーター R1 は、パブリック インターフェイス上の ARP ネクスト ホップ キャッシュ エントリーで許容される最大制限に達しました。
Feb 08 17:15:14 [TRACE] [R1]: Max cache soft (80%) arp nh cache limit for intf idx 325 reached—ルーター R1 は、すべてのインターフェイスで設定済みのグローバル ARP ネクスト ホップ キャッシュ制限の 80% に達しました。
Feb 08 17:19:41 [TRACE] [R1]: Max cache hard arp nh cache limit for intf idx 325 reached—ルーター R1 は、すべてのインターフェイスで設定されているグローバル ARP ネクスト ホップ キャッシュの最大数に達しました。