マシン側で変換が行われるときに、スイッチにARPテーブルが必要なのはなぜですか?


12

タイトルから明らかなように、マシン側で変換が行われるときにスイッチにARPテーブルが必要なのはなぜですか?

大まかに言って、なぜマシンとスイッチに2つのARPテーブルがあるのですか?スイッチの1つでは不十分ですか?


このページの答えは正しいと思います。L2スイッチにはARPテーブルが含まれていると他のページで他のコメンテーターを見つけました。これは意味がありません。L3デバイスのみがARPテーブルを含みます。
スティーブンギボンズ

回答:


23

これはかなり一般的な誤解、またはより具体的には、用語の問題です。レイヤ2スイッチでは、ARPテーブルはなく、転送テーブルだけがあります。スイッチは、受信した各src MACアドレスを転送テーブルに記録し、ポートに割り当てます。これにより、dst MACを持つフレームは、そのMACで認識されているポートにのみ送信されます。多くの人は、これを「arpテーブル」または「arpキャッシュ」と呼びますが、どちらでもありません。

マネージドレイヤー2スイッチには、転送テーブルとARPテーブルがありますが、後者は管理インターフェイスが関係するホスト(つまり、スイッチの構成に使用しているPC)と通信するためにのみ使用されます。マネージドレイヤー3スイッチサブネット間の転送を実行するには、管理インターフェイスとルーター機能が存在する必要があるため、転送テーブルとARPテーブルが必要です。


スイッチを(スイッチ)ポートのセットとしてモデル化することは私の理解です。ポートは番号付きのパケットキューです。スイッチはポートを任意の順序で排出し、MACからポートへのマッピングを維持します。パケットがポートから排出されると、src mac(アドレス)がポート(番号)にマッピングされます。ドレインされたパケットを配信する必要がある場合、既知の場合はdest macのポートに送信され、不明の場合はブロードキャストされます。これは、ポートがマッピングされるためにethパケットを取得する必要があることを意味します。
ロブ

@ロブ、あなたのコメントには、明確ではないにしても、多くの不明確な声明があります。ポートはキューではありません。一部のプラットフォームでは1対1のマッピングがあるかもしれませんが、それらは同じではありません。MACアドレスは、フレームが送信されるのではなく受信されるときに学習されます。フレームは、受信した順序で出力キューに配信されます。おそらく、ある種のQoSと組み合わせて、任意ではありません。宛先アドレスが不明なフレームは、ブロードキャストではなくフラッディングされます。
YLearn

次に、モデルスイッチを(イーサネットパケット)キューの番号付きのペアとして(入力、出力)入力キューが読み取られるときに、そのパケットのsrc macが入力キューのポート番号にマップされていることを確認してください。そのパケットは、dst macに対応する出力キューに配置する必要があります。ポートがマッピングされていない場合、パケットは自身のポート以外のすべての出力キューにエンキューされます。(ブロードキャスト/フラッドの区別が何かはわかりません。ハードウェアレベルですべてのワイヤに文字通り同じ信号を送信すると思います。あるいは、ポートを介してラウンドロビンするのでしょうか?)
Rob

ああ...スイッチをパケットキューとしてモデル化することに異論があると思います。スイッチは、パケット全体よりも小さいデータのチャンクで動作している可能性があります。つまり、バイトを取得するパケットを取得するポートがわかったら、すぐにそれらのバイトを送信できます。例:イーサネットヘッダーを処理するのに十分なバイトをキューに入れます。パケット全体を保持しないでください。
Rob

@Rob、フラッディングフレームは、宛先が不明なユニキャストフレームであり、受信ポート以外の各ポートにフラッディングされます。ブロードキャストは、受信ポート以外のすべてのポートに送信されるすべての宛先フレームですが、L2ブロードキャストドメインでそれを受信するすべてのスイッチによって、この方法で引き続き処理されます。単一のスイッチでも同様ですが、ネットワーク全体への影響は大きく異なります。
YLearn

6

IPプロトコルを利用するすべてのデバイスには、ARPテーブルがあります。IPはL3プロトコルであり、基盤となるL2プロトコルを必要とするため、これはデバイスがL3 IPアドレスを対応するL2アドレスに変換できるようにするための要件です。

デバイスがローカルネットワークのIPアドレスと通信しているかどうかに関係なく、L2トラフィックを送信する必要があります(簡単にするために、この議論からブロードキャストとマルチキャストを除外しましょう)は、ローカルL2ドメインの特定のデバイスに送信します。IPアドレスがローカルネットワーク上にある場合、これは宛先デバイスに直接送信されます。そうでない場合、これは、L3トラフィックを宛先に転送できるローカルネットワークのゲートウェイまたはルーターとして機能するデバイスです。

スイッチがIPプロトコルをまったく使用していない場合(つまり、IPを介した管理や、L3機能がないなど)、スイッチはARPテーブルを必要としません。

ただし、IPプロトコルを使用しないエンタープライズスイッチプラットフォームについては知りません。Telnet、SSH、HTTP、HTTPS、およびSNMPは、IPへのアクセスを必要とするエンタープライズスイッチの一般的にサポートされるサービスのほんの一例です。


2

おそらくすでにご存じのとおり、ARPテーブルの目的は、ネットワーク層アドレスをリンク層アドレスに変換することです。つまり、IPアドレスからMACアドレスへ。

参照するテーブルは完全ではありません。レイヤー2スイッチにも2種類のテーブルがあります。

  • スイッチと「コンピュータとして」通信して、そのコントロールとインターフェースするために使用されるARPテーブル。まあ、それがマネージドスイッチならこれがあるでしょう

  • スイッチポートとMACアドレスを関連付けるテーブル

例1:PCがパケットを起動する場合、IPアドレスがローカル(ARPテーブルから)であれば、MACアドレスを使用します。そのパケットがスイッチに到達すると、スイッチはMACアドレスに基づいて(スイッチのポート/ MACテーブルから)パケットを適切なポートに移動します。

例2:スイッチが管理インターフェースからパケットを起動する場合、PCがARPテーブルを使用するのと同じことを行います。ただし、スイッチがそのスイッチング機能からパケットを起動する場合は、ポート/ MACテーブルに従って、そのパケットをあるポートから別のポートに移動するだけです。


親愛なるありがとうございます。素敵で役立つ例。パケットとフレームを混同しないでください。
Mohamad-Jaafar NEHME 2015年

-2

スイッチにはMACアドレステーブルがあります。
PCなどのエンドポイントにはarpテーブルがあります。


スイッチだけがMACアドレステーブルを持っているのですか?そして、エンドポイントだけにARPテーブルがありますか?
YLearn

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