Gratuitous ARPはどのように機能しますか?


36

Gratuitous ARPは通常のARP要求と同様に機能しますか?

gratuitous ARPがHSRPに使用されるのはなぜですか?


3
これについてどこかで読みましたか?しなかった場合、する必要があります。行ったことがあり、明確でない場合は、質問に具体的に記入してください。
ゲルベン

私はどのようにARPの作品についての明確なんだけど、この概念は、このARPがどのように機能するかを特にHSRPの私の混乱一部です@Gerben ...
トロイの木馬

1つはGrauitous ARPはリクエストであり、もう1つはそれが返信であると言うWiresharkスキームを示しています。それは何らかのランダムな振る舞いですか?私のコンピューターでは、盗聴されたGratuitous ARPパケットもリクエストとして記録されました(オペコード:1)。
VITOR FERNANDES DE BARROS

回答:


42

Gratuitous ARPは一種の「事前通知」であり、他のシステムのARPキャッシュを要求する前(ARP要求なし)に更新するか、古い情報を更新します。

Gratuitous ARPについて話すとき、パケットは実際には特別なARP要求パケットであり、おそらく予想されるARP応答パケットではありません。これに関するいくつかの理由は、RFC 5227で説明されています

Gratuitous ARPパケットには次の特性があります。

  • パケット内の送信元IPと宛先IPの両方が、Gratuitous ARPを発行するホストのIPです
  • 宛先MACアドレスはブロードキャストMACアドレス(ff:ff:ff:ff:ff:ff)です
    • これは、パケットがスイッチ上のすべてのポートにフラッディングされることを意味します
  • 返信はありません

Gratuitous ARPはいくつかの理由で使用されます:

  • IPのMACアドレスが変更された後、ARPテーブルを更新します(フェールオーバー、新しいNICなど)
  • MACアドレスが別のポートにあるL2デバイス(スイッチ)のMACアドレステーブルを更新する
  • インターフェースがアップしたときに無償ARPを送信して、他のホストに新しいMAC / IPバインディングについて事前に通知し、ARP要求を使用して検出する必要がないようにします。
  • Gratuitous ARPリクエストへの返信を受信すると、ネットワークでIPアドレスの競合があることがわかります。

質問の2番目の部分に関しては、HSRPVRRPなどはgratuitous ARPを使用してL2デバイス(スイッチ)のMACアドレステーブルを更新します。また、「仮想」の代わりに、HSRPに焼き付けられたMACアドレスを使用するオプションがあります。その場合、Gratuitous ARPはL3デバイス/ホストのARPテーブルも更新します。


Gratuitous ARPパケットを表示するには?
トロイの木馬


無償ARPのための任意のwiresharkキャプチャが...そこにある
トロイの木馬

1
あなたは、上の例のパケットを見ることができますWiresharkのホームページ
セバスチャンWiesinger

1
独自のIPが含まれるARP要求に対する応答を受け取っているからです。したがって、他の誰かがこのIPを持ち、それに応じて応答しています。
セバスチャンヴィーシンガー14

14

A 無償ARPは、 ARPリクエストによって促されていなかったARP応答です。Gratuitous ARPは、ノードがネットワーク全体へのIPからMACへのマッピングをアナウンスまたは更新する方法として、ブロードキャストフレームとして送信されます。

ARPパケットには、パケットが要求か応答かを示す「オペコード」フィールドが含まれています。で無償ARP、オペコードフィールドがに設定されている2応答を示しています:

ここに画像の説明を入力してください

Gratuitous ARPには多くのユースケースがあり、通常はすべて、ARPマッピングまたはスイッチポートMACアドレステーブルを更新する何らかの必要性に関係しています。

HSRP(および他の多くの冗長プロトコル)はGratuitous ARPを頻繁に使用します。このアニメーションでは、次の方法を説明します。

ここに画像の説明を入力してください

RouterAとRouterBがIPアドレス10.0.0.1とMACアドレスを共有していることに注意してください0053.ffff.1111。ホストはのデフォルトゲートウェイで構成されて10.0.0.1おり、それぞれに10.0.0.1IPアドレスが0053.ffff.1111MACアドレスにマップされていることを示すARPマッピングがあります。MACアドレスとIPアドレスの両方が2つのルーター間で共有されるため、このARPマッピングを更新する必要はありません。

しかし、ルータAがアクティブHSRPルータであるときに、MACアドレスは、ルータAに障害が発生した場合は、ルータBは、MACアドレスがあること、スイッチのMACアドレステーブルを更新するために無償ARPを送信スイッチポート1に接続されたデバイスによって提供されている0053.ffff.1111今では提供されていますスイッチポート2に接続されたデバイス。

RouterBに障害が発生し、RouterAがIP / MAC 10.0.0.1/0053.ffff.1111

することができます上記のアニメーションでHSRP遷移とGARPパケットのパケットキャプチャダウンロードして勉強Wiresharkを


厳密にあなたが尋ねたものではありませんが、このQ&Aのコメントから、重複アドレスの検出について何か言及するのが賢明だと思いました。

重複アドレスの検出とGratuitous ARPに関して、しばしば混乱する点があります。コンピュータがネットワーク上の別のホストが特定のIPアドレスを使用しているかどうかを確認しようとすると、Gratuitous ARPを送信しません

この理由は、定義上、Gratuitous ARPはネットワーク上の他のデバイスのARPマッピングを更新するためのものです。IPが一意でない場合、「一意性のテスト」によって不正なARPエントリが更新されることは望ましくありません。

実際には、ARPメッセージの特定のセットが重複アドレス検出で使用されます:ARPプローブとARPアナウンスメント

これら2つのパケットと実際のGratuitous ARPの決定的な違いは、ARPプローブには完全なIP / MACマッピングがないため、ARPプローブが誤ってARPキャッシュを誤って更新することは不可能だということです。

一般的なプロセスは、ARPプローブが数回送信されることです。これにより、IPが既に使用されている場合、問題のIPの所有者にGratuitous ARPを送信するように促されます。応答が受信されない場合、送信者はARPアナウンスメントを送信して、ネットワーク上のIPアドレスを正式に要求します。

ARPアナウンスメントはGratuitous ARPにさらに似ていますが、ARPアナウンスメントにはopcodeがあり1、リクエストを示しているため(Gratuitous ARPには2opcodeがあるため)、技術的にも同じではありません。


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.