はじめに
このドキュメントでは、アプリケーションセントリックインフラストラクチャ(ACI)ファブリックでのアドレス解決プロトコル(ARP)フラッディングおよびARPグリーニングの使用について説明します。
ARPフラッディングについて
Cisco ACIには、必要に応じてARPフラッディングを使用するか無効にするオプションがあります。レイヤ2の問題のトラブルシューティングを行うには、ARPフラッディングに関するファブリックの動作を知っておく必要があります。
ARPフラッディングを有効にすると、従来のネットワークでの通常のARP処理に従って、ARPトラフィックがファブリック内でフラッディングされます。ARPフラッディングは、ホストARPキャッシュまたはルータARPキャッシュを更新するためにGratuitous ARP(GARP)要求が必要な場合に必要です。これは、IPアドレスが異なるMACアドレスを持つことができる場合に当てはまります(たとえば、ロードバランサとファイアウォールのフェールオーバーのクラスタリングなど)。
ARPフラッディングが無効な場合、ファブリックはユニキャストを使用してARPトラフィックを宛先に送信しようとします。したがって、ARPパケットのターゲットIPアドレスに対するレイヤ3ルックアップが発生します。ARPは、宛先リーフスイッチに到達するまで、レイヤ3ユニキャストパケットのように動作します。
注:このオプションは、ブリッジドメインでユニキャストルーティングが有効になっている場合にのみ適用されます。ユニキャストルーティングがディセーブルの場合、ARPフラッディングは暗黙的にイネーブルになります。
次に、ARPフラッディングの使用に関するいくつかの使用例を示します。
使用例1:エンドポイントはACIで学習される
この使用例は、両方のエンドポイントがリーフスイッチに認識されている場合に適用されます。
このシナリオでは、ARPフラッディングは発生しません。リーフスイッチがエンドポイント情報を認識すると、トラフィックはローカルにスイッチされます。この動作は、H1などの一方のエンドポイントがもう一方(H2)に対してARP要求を送信し、ARPフラッディングが無効の場合も同じです。リーフスイッチはH2の接続先を認識し、ARPターゲットIPアドレス(H2 IPアドレス)をチェックするため、トラフィックをフラッディングしたり、スパインレイヤにリダイレクトしたりする必要はありません。したがって、H2に向けてARP要求を送信します。
エンドポイントグループ(EPG)、ブリッジドメイン、またはアクセス/カプセル化の設定に関係なく、リーフで認識されているエンドポイントは同じように扱われます。
例 1:同じEPG、ブリッジドメイン、およびアクセス/カプセル化で動作する、ファブリックに認識されているエンドポイント。

例 2.同じEPG、ブリッジドメインで動作しているがアクセス/カプセル化が異なる、ファブリックで認識されているエンドポイント。

例 3. ファブリックに認識されているエンドポイント。異なるEPGで動作するが、ブリッジドメインは同じである。
ARPフラッディングが無効で、エンドポイントが同じブリッジドメイン内の異なるEPGの一部である場合、同じリーフスイッチに接続されていると、リーフスイッチがARPターゲットIPアドレスを認識していれば(ユニキャストルーティングが有効な場合)、ARPトラフィックはローカルにルーティングされます。

使用例2:エンドポイントはCOOPで学習される
この使用例は、両方のエンドポイントが異なるリーフスイッチに接続され、スパインスイッチのCooperative Protocol(COOP)データベースに存在する場合に適用されます。
ARP要求をファブリック経由で転送する必要があります。H1からH3へのARPトラフィックのフローは次のとおりです。
-
H1はブロードキャスト宛先MACを使用してH3にARP要求を送信します。
-
ACIではARP要求の送信にユニキャスト転送を使用しようとするため、ローカルリーフスイッチはARPターゲットIPアドレス(H3 IPアドレス)をチェックします。ローカルリーフスイッチは、エンドポイントH3のIPアドレスを認識していないため、スパインプロキシのスパインスイッチにARP要求を送信します。
-
スパインはCOOPデータベース内にH3情報を持ち(ユニキャストルーティングが有効)、ファブリック経由で宛先リーフスイッチにARP要求を転送し、ファブリックはH3に転送します。H3はトラフィックを受信すると、H1に応答します。
注:上記のメカニズムは、3つのシナリオすべてに適用されます。
例 1: 同じEPG、ブリッジドメイン、およびアクセス/カプセル化で動作する、ファブリックに認識されているエンドポイント。

例 2. 同じEPG、ブリッジドメインで動作しているがアクセス/カプセル化が異なる、ファブリックで認識されているエンドポイント。

例 3. ファブリックに認識されているエンドポイント。異なるEPGで動作するが、ブリッジドメインは同じである。

使用例3:ターゲットIPが不明、ARPフラッドが無効
この使用例は、入力リーフがターゲットIPアドレスの場所を知らない場合(ARPフラッディングが無効、ユニキャストルーティングが有効)に適用されます。
同様のシナリオで、ARPフラッディングが無効で、入力リーフがARPターゲットIPアドレスの場所を認識しない場合、ARP要求はフラッディングの代わりにエニーキャストスパインプロキシトンネルエンドポイント(TEP)に送信されます。H1からH2へのARPトラフィックのフローは次のとおりです。
-
H1は、ブロードキャスト宛先MACを使用してH2にARP要求を送信します。
-
ACIはユニキャスト転送を使用してARP要求を送信しようとします。ローカルリーフスイッチは、エンドポイントH2のIPアドレスを認識していないため(ARPターゲットIPが入力リーフで不明)、スパインプロキシのスパインスイッチにARP要求を送信します。
-
スパインスイッチのCOOPデータベースにH2エンドポイント情報がないため、スパインは元のパケットをドロップしますが、代わりに、後続のARP要求がドロップされないように、ARP収集をトリガーしてターゲットIPを検出します。
例 1:EPG、ブリッジドメイン、またはアクセス/カプセル化の設定に関係なく、ARP要求のフローは前述と同じままです。

使用例4:ターゲットIPが不明、ARPフラッドが有効
この使用例は、入力リーフがターゲットIPアドレスの場所を知らない場合(ARPフラッディングが有効、ユニキャストルーティングが有効)に適用されます。
ARPフラッディングがブリッジドメインで有効になっている場合、H1からのARP要求はフラッディングを通じてH2に到達します。H1からH2へのARPトラフィックのフローは次のとおりです。
例 1:

注:Cisco ACI(ブリッジドメインまたはEPGレベル)のカプセル化でのフラッディングは、ブリッジドメイン内のフラッディングトラフィックを1つのカプセル化に制限するために使用できます。2つのEPGが同じブリッジドメインを共有し、Flood in Encapsulation(FIB)が有効な場合、EPGフラッディングトラフィックは他のEPGに到達しません。
ARPフラッディングを有効にする利点の1つは、ACIリーフに通知することなく、ある場所から別の場所に移動したサイレントIPを検出できることです。ARP要求はブリッジドメイン内でフラッディングされるため、ACIリーフがIPが古いロケーションにあると認識している場合でも、サイレントIPを持つホストは適切に応答するため、ACIリーフはそれに応じてエントリを更新できます。
ARPフラッディングが無効の場合、ACIリーフは、IPエンドポイントがエージングアウトするまで、古い場所にのみARP要求を転送し続けます。一方、ARPフラッディングを無効にする利点は、ARP要求をターゲットIPの場所に直接送信することによってトラフィックフローを最適化できることです。これは、GARPなどを介して移動を通知することなく、エンドポイントが移動しないことを前提としています。
使用例5:異なるEPGおよびBDのエンドポイント
この使用例は、異なるEPGおよび異なるブリッジドメインでエンドポイントが接続されている場合に適用されます。
エンドポイントが異なるEPGとブリッジドメインの一部である場合、エンドポイント間のトラフィックをルーティングする必要があります。フラッディングは、ARPフラッディングを含め、ブリッジドメインを通過しません。したがって、H1が同じリーフスイッチに接続されているH2と通信する必要がある場合、トラフィックはデフォルトゲートウェイのMACアドレスに向けて送信されるため、この例ではARPフラッディングは関係ありません。

ARPグリーニングについて
Cisco ACIには、ACIリーフがローカルエンドポイントを学習していないサイレントホストを検出するメカニズムがいくつかあります。ACIには、これらのサイレントホストを検出するためのいくつかのメカニズムがあります。不明なMACに対するレイヤ2スイッチドトラフィックの場合は、ブリッジドメイン(BD)でレイヤ2不明ユニキャストオプションをフラッディングに設定できます。一方、ブロードキャスト宛先MACを持つARP要求の場合は、ブリッジドメインでARPフラッディングオプションを使用してフラッディング動作を制御できます。また、Cisco ACIはARPグリーニングを使用して、まだ学習されていないエンドポイントのIPアドレスを解決するためにARP要求を送信します(サイレントホスト検出)。
ARP収集では、ARP要求の宛先がどこに接続されているかについての情報がスパインにない(ターゲットIPがCOOPデータベースにない)場合、ファブリックはブリッジドメインのスイッチ仮想インターフェイス(SVI)(汎用ゲートウェイ)のIPアドレスから発信されるARP要求を生成します。このARP要求は、ブリッジドメインのすべてのリーフノードのエッジインターフェイス部分に送信されます。また、ARPフラッディングなどの設定に関係なく、(レイヤ3)ルーティングされたトラフィックについては、そのトラフィックが未知のIPにルーティングされている限り、ARPグリーニングがトリガーされます。
ARP収集にはいくつかの要件があります。
使用例1:ターゲットIPが不明、ARPフラッドが無効
この使用例は、ターゲット/宛先エンドポイントがファブリックで認識されない場合(ARPフラッディングが無効になっている場合)に適用されます。
エンドポイントが異なるリーフスイッチにあり、同じEPGおよびブリッジドメインの一部であり、同じVLANアクセスマッピングを使用している場合、ARP要求(たとえば、H1からH3へ)をファブリック経由で転送する必要があります。スパインスイッチ(サイレントホスト)のCOOPデータベースからH3情報が欠落していて、ARPフラッディングが無効になっている場合は、次の図に示すように、ARPグリーニングも使用できます。

H1からH3へのARPトラフィックのフローは次のとおりです。
-
H1はブロードキャスト宛先MACを使用してH3にARP要求を送信します。
-
ACIはARP要求を送信するためにユニキャストフォワーディングを使用しようとするため、ローカルリーフスイッチはARPターゲットIPアドレス(H3 IP)をチェックします。 ローカルリーフスイッチは、エンドポイントH3のIPアドレスを認識していないため、スパインプロキシのスパインスイッチにARP要求を送信します。
-
スパインスイッチのCOOPデータベースからH3情報が欠落しており、送信元として広範なゲートウェイIPアドレスを使用したARP収集がトリガーされます。このARP要求はドメインでフラッディングされます。
-
H3はARP要求を受信し、ファブリック内で学習している間に応答します。
EPG、ブリッジドメイン、またはアクセス/カプセル化の設定に関係なく、ARP収集機能は、2つのエンドポイントが互いに通信しようとするときと同じように動作します(ファブリック内の同じリーフスイッチまたは異なるリーフスイッチへの接続に関係なく)。
使用例2:異なるEPGおよびBDのエンドポイント
この使用例は、異なるEPGおよびブリッジドメインでエンドポイントが接続されている場合(ARPフラッディングが有効になっている場合)に適用されます。
エンドポイントが異なるEPGとブリッジドメインの一部である場合、エンドポイント間のトラフィックをルーティングする必要があります。フラッディングは、ARPグリーニングによって生成される可能性のあるARPフラッディングを含め、ブリッジドメインを通過しません。したがって、H1が同じリーフスイッチに接続されているH2と通信する必要がある場合、トラフィックはデフォルトゲートウェイのMACアドレスに向けて送信されるため、この例ではARP収集は関係ありません。
