IPアドレスとMACアドレスの違いは?
IPアドレスとMACアドレスは、どちらも通信相手を識別するための情報です。「なぜIPアドレスもMACアドレスも両方必要なのか?」「IPアドレスとMACアドレスは何が違うのか?」ということを疑問に思ったことがあると思います。簡潔にIPアドレスとMACアドレスの違いのポイントとまとめます。
IPアドレスとMACアドレスの違いのポイント
IPアドレスとMACアドレスの違いのポイントをまとめると以下です。
- IPアドレスは「論理的なデータ」の宛先と送信元を示す
- MACアドレスは「物理的な信号」の宛先と送信元のネットワークインタフェースを示す
「データ」は「0」と「1」で構成されている論理的なものです。見たり触れたりする物理的な実体はありません。なので、「0」と「1」がそのままネットワーク上に流れていくわけではありません。電気信号や光信号、電波といった物理的な信号として伝えていきます。
IPアドレスで「0」と「1」の「論理的なデータ」の宛先と送信元を示します。 そして、「論理的なデータ」は物理的な信号としてネットワークインタフェースから送り出されて、適切な宛先のネットワークインタフェースまで伝えられていきます。MACアドレスは、「物理的な信号」の送信元と宛先のネットワークインタフェースを示す。
MACアドレスはイーサネットインタフェース(LANポート/NIC)や無線LAN(Wi-Fi)インタフェースのアドレスです。「ネットワークインタフェース」とは、イーサネットインタフェースまたはWi-Fiインタフェースです。話しを簡単にするためにイーサネットインタフェースのみを想定します。
IPアドレスはネットワークインタフェースに対して設定する
IPで「論理的なデータ」を送信するためには、「物理的な信号」に変換してインタフェースから送り出します。そして、IPで「論理的なデータ」を受信するには、その「物理的な信号」がインタフェースに伝わってこなければいけません。このことから、IPアドレスはインタフェースに対して設定することになります。
MACアドレスを持つイーサネットやWi-Fiのインタフェースに対してIPアドレスを設定することで、IPアドレスとMACアドレスを関連付けます。つまり、IPによって「論理的なデータ」を送り届けるには、どのインタフェースに「物理的な信号」が伝わっていけばよいかがわかるようにしています。以下の図は、IPアドレス設定の簡単な例です。
この図で、MACアドレス「PC1」というイーサネットインタフェースにIPアドレス「192.168.1.1」と設定しています。IPアドレス「192.168.1.1」へ「論理的なデータ」を送り届けるためには、MACアドレス「PC1」のイーサネットインタフェースにイーサネットの「物理的な信号」が伝わればいいということを示しています。
IPヘッダには宛先IPアドレス「192.168.1.1」を指定して、宛先MACアドレスには「PC1」を指定するというように、IPアドレスもMACアドレスも両方とも指定します。そうすることで、「論理的なデータ」を送り届けたい宛先にきちんと「物理的な信号」が伝えられていくようになります。なので、IPアドレスもMACアドレスも必要です。
ただ、イーサネットやWi-FiなどMACアドレスを持つインタフェースを利用しているときだけです。MACアドレスがないネットワークインタフェースの種類もあります。
IPアドレスとMACアドレスを人間同士の会話にたとえると
- IPアドレスは「論理的なデータ」の宛先と送信元を示す
- MACアドレスは「物理的な信号」の宛先と送信元のネットワークインタフェースを示す
このことについての理解を助けるために、人間同士の会話にたててみましょう。
私たちが会話するときに、相手に伝えたい話題は物理的な実体はありません。人が考えていることは、目で見たり手で触れたりすることができませんよね。会話で伝えたい「話題」は、「論理的なデータ」に例えることができます。そして、会話相手の「意識」が「IPアドレス」に例えられます。伝えたい話題は、思っているだけでは伝わりません。空気の振動、つまり、「声」という「物理的な信号」にしないといけません。そして、その声は相手の耳に伝わらないといけません。会話相手の耳がイーサネットなどのネットワークインタフェースに例えられます。声を発する口もネットワークインタフェースです。つまり、会話の相手の「耳と口」が「MACアドレス」と考えてください。
人間が会話するときにいちいち会話相手を明示的に特定して、その人の耳に声が届くようになんて考えたりしません。でも、コンピュータ同士の通信のときにはIPヘッダに宛先IPアドレス、イーサネットヘッダに宛先MACアドレスを指定しなければいけません。
また、図のPC1とSRV1は、同じネットワークにつながっています。人間同士の会話の例えだと遠く離れたデータの転送「ルーティング」は、うまく当てはまりません。たとえ話というものは、そんなものですね。説明したいことにピッタリと当てはまるたとえ話なんてないものです。
さらに詳細は
あらためて、IPアドレスとMACアドレスの違いのポイントです。
- IPアドレスは「論理的なデータ」の宛先と送信元を示す
- MACアドレスは「物理的な信号」の宛先と送信元のネットワークインタフェースを示す
「0」「1」の「論理的なデータ」は電気信号など「物理的な信号」として伝えていきます。なので、「論理的なデータ」の宛先と送信元を示す「IPアドレス」も「物理的な信号」の宛先と送信元を示すMACアドレスも必要です。
この記事は、私のWebサイトのダイジェストです。より詳細な解説は、以下をご覧ください。