/ / MACアドレスは何に使用されますか?

MACアドレスは何に使用されますか?

ローカルネットワーク上のすべてのハードウェアには、ローカルルーターまたはサーバーによって割り当てられたIPアドレスに加えて、MACアドレスがあります。そのMACアドレスは正確には何ですか?

本日の質疑応答セッションは、コミュニティ主導のQ&A WebサイトのグループであるStack Exchangeの下位部門であるSuperUserのご厚意によるものです。

質問

SuperUserリーダーのVishnu Vivekは、MACアドレスとその機能に興味があります。

IPアドレスは階層的であることを理解しています。インターネット全体のルーターがパケットを転送する方向を認識できるようにします。 MACアドレスには階層がないため、パケット転送はできません。そのため、MACアドレスはパケット転送に使用されません。

理由もなくそこにあるとは思いません。だから私の質問は、パケット転送中に正確にどこにMACアドレスが関係するのですか?

本当にどこに? MACアドレスの特定の機能は何ですか?

答え

SuperUserの寄稿者であるWerner Henzeが、MACアドレスの機能について洞察を提供しています。

MACアドレスは何に使用されますか?

MACアドレスは、イーサネットベースのネットワークを機能させる低レベルの基本です。

ネットワークカードにはそれぞれ一意のMACアドレスがあります。 イーサネットで送信されるパケットは、常にMACアドレスから送信され、MACアドレスに送信されます。ネットワークアダプターがパケットを受信して​​いる場合は、パケットの宛先MACアドレスをアダプター自体のMACアドレスと比較しています。アドレスが一致する場合、パケットは処理され、一致しない場合は破棄されます。

特別なMACアドレスがあります。たとえば、ff:ff:ff:ff:ff:ffは、ブロードキャストアドレスであり、ネットワーク内のすべてのネットワークアダプターをアドレス指定します。

IPアドレスとMACアドレスはどのように連携しますか?

IPは、イーサネットの上の層で使用されるプロトコルです。たとえば、別のプロトコルはIPXです。

コンピュータがパケットを送信したいときIPアドレスx.x.x.xの場合、最初のチェックは、宛先アドレスがコンピューター自体と同じIPネットワークにあるかどうかです。 x.x.x.xが同じネットワークにある場合、宛先IPに直接到達できます。そうでない場合、パケットは構成済みルーターに送信する必要があります。

今のところ状況は悪化しているようですが、これで2つのIPアドレスができました。1つは元のIPパケットのターゲットアドレス、もう1つはパケットの送信先デバイスのIP(次のホップ、最終宛先またはルーター)です。

イーサネットはMACアドレスを使用するため、送信者はネクストホップのMACアドレスを取得する必要があります。そのために使用される特別なプロトコルARP(アドレス解決プロトコル)があります。送信者は次のホップのMACアドレスを取得すると、そのターゲットMACアドレスをパケットに書き込み、パケットを送信します。

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

ARP自体はIPのようなイーサネット上のプロトコルですまたはIPX。デバイスが特定のIPアドレスのMACアドレスを知りたい場合、ブロードキャストMACアドレスにパケットを送信して、「IPアドレスy.y.y.yは誰ですか?」すべてのデバイスがそのパケットを受信しますが、IPアドレスがy.y.y.yのデバイスのみが「It's me」というパケットで応答します。要求側のデバイスは応答を受信し、送信元MACアドレスが使用する正しいMACアドレスであることを認識します。もちろん結果はキャッシュされるので、デバイスは毎回MACアドレスを解決する必要はありません。

ルーティング

私はほとんど言及するのを忘れていました:MACアドレスに基づくルーティングはありません。低レベルのイーサネットとMACアドレスは、 同じ ネットワーク(ケーブル接続またはワイヤレス)。 ルーターが間にある2つのネットワークがある場合、ネットワークAにデバイスを置くことはできません。ネットワークBにあるデバイスのMACアドレスにパケットを送信します。ネットワークAにネットワークBにあるデバイスのMACアドレスを持つデバイスはないので、このMACアドレスへのパケットは、ネットワークA内のすべてのデバイスによって(ルーターによっても)破棄されます。

ルーティングはIPレベルで行われます。 単にルーターが上記の「IPアドレスとMACアドレスはどのように連携するのですか?」で説明したことを実行しているだけです。ルータは独自のMACアドレスのパケットを受信しますが、IPアドレスは異なります。次に、ターゲットIPアドレスに直接到達できるかどうかを確認します。もしそうなら、彼はパケットをターゲットに送信します。そうでない場合、ルーター自体にも上流ルーターが構成されており、そのルーターにパケットを送信します。

もちろん、複数のルーターを持つことができます構成されています。ホームルーターには上流ルーターが1つだけ構成されますが、インターネットバックボーンでは、大きなルーターに大きなルーティングテーブルがあるため、すべてのパケットの最適な方法がわかります。

MACアドレスの他の使用例

  1. ネットワークスイッチは、すべてのポートで表示されるMACアドレスのリストを保存し、パケットを表示する必要があるポートにのみパケットを転送します。
  2. ワイヤレスアクセスポイントは、アクセス制御にMACアドレスを使用することがよくあります。正しいパスフレーズを使用して、既知のデバイス(MACアドレスは一意でデバイスを識別する)へのアクセスのみを許可します。
  3. DHCPサーバーはMACアドレスを使用してデバイスを識別し、一部のデバイスに固定IPアドレスを割り当てます。

説明に追加するものがありますか?コメントで鳴り響きます。他の技術に精通したStack Exchangeユーザーからの回答をもっと読みたいですか?こちらでディスカッションスレッド全体をご覧ください。