

ネットワークを勉強し始めたばかりのものです。  
MACアドレスとIPアドレスの２つがあることを学びましたが、  
MACアドレスが各製品でそれぞれ違うのであれば、IPアドレスはなんのためにあるのですか。


CC BY-SA 4.0
2019-05-05T13:29:35.917
54749
2019-05-05T21:14:52.817
2019-05-05T15:32:40.240
32986
32027
question
network tcp
MACアドレスとIPアドレスの違い


世界中で固有のMACアドレスが振られているのだから、IPアドレスの必要性が疑問になるというのは確かにそのとおりですね。ただ、それは「ものを識別する」という観点では正しいものの、情報を届けるということを実現するために、そうはなっていません。

IPアドレスは送信元/最終的な宛先、MACアドレスは次に転送する隣の機械を識別するため、というのがよくある説明です。

L2(データリンク層)とL3(ネットワーク層)の2つの層の違いを知る必要があります。

L3のIPアドレスは組織が割り振りをある程度自由に設計することができ、ネットワークのサイズ・隣のネットワーク・上流のネットワークのような設計を決めることができます。組織の規模や使い方、送り先との契約であったり大人の事情を盛り込むことができるわけです。

L2のMACアドレスは機器ごとにベンダが割り振るので、使用者の事情が入る余地は基本的にありません。  
また、ローカルネットワーク内のMACアドレスとしか通信できないようになっています。それは、通信先のMACアドレス宛に情報を送ろうにも、世界中の機械に送りつけてみないと正しい宛先に届かないネットワークでは輻輳してしまいますし、L2は隣のネットワークといった概念を持たない閉じた世界であるためです。

MACアドレスだけで世界中の通信が行われるネットワークというのも作ろうと思えばできたのかもしれませんが、現在主流のTCP/IPはそうはならず、L2/L3のプロトコル・スタックによる役割分担が採用されています。


CC BY-SA 4.0
2019-05-05T17:24:19.180
54755
2019-05-05T17:24:19.180
2238
54749
answer


いわゆる The Internet においては Internet Protocol が採用されている関係で、機器の識別は IP アドレスで行います。 Mac
アドレスは必要ありません。現に、今では完全に廃れていますが電話回線を使ったモデム/音響カプラによる PPP
による接続においては、パソコン側はシリアルポートを使うので Mac アドレスなど存在しません。

ということで質問に対する回答としては  
Q1. IP アドレスはなぜ存在する  
A1. Internet/Intranet 上の機器を区別するためにあります

Q2. MAC アドレスはなぜ存在する  
A2. Ethernet の仕様として存在する。

Q3. MAC アドレスがあるのに IP アドレスを使う理由は  
A3. Internet Protocol は (MAC アドレスのある) Ethernet 装置で使うのが現代的普通になっていますが、 (MAC
アドレスのない) ほかの装置 (モデム等) でも使うことができます。そのため Internet Protocol
を使う上では、プログラム上から見て相手の識別は常に IP アドレスのみを使います。


CC BY-SA 4.0
2019-05-05T21:14:52.817
54757
2019-05-05T21:14:52.817
8589
54749
answer