IPアドレスとはネットワーク上の住所の役割をはたします。通信をする際には、世界中のどこかにあるデバイス機器にデータを送る必要があります。住所がわかれば世界中のどこにあるかわからなくても送り届けることが可能です。IPアドレスはこれを可能にしています。
では、次にMACアドレスの必要性について記述していきます。
MACアドレスはIPアドレスが家まで運んできたデータを、送り先に届けきるために必要です。
どういうことか?
IPアドレスは住所なんだからそのまま送り届けてくれるんでしょ?
たしかに、IPアドレスだけでもデータは家に届きます。さきほどから家と表現しているものは、正確にはルーターです。
しかし、家の中にいる送り先さんにはIPアドレスだけでは届きません。宛名がないと誰の荷物かわからない感じです。この宛名がMACアドレスとなります。
じゃあ、MACアドレスだけでいいじゃんと考えますが、それは日本からブラジルのアンドレさんに手紙を届けたいけど住所はわからないというようなもので非常に非効率です。
ここからはデータのやり取りが、どのような流れかを記述していきます。
ここの流れをしっかりと把握することで、よりMACアドレスとIPアドレスの違いができるようになるはずです。
まず、自分のパソコンから別のネットワークにいる相手のパソコン宛にメールを送ったとしましょう。
そうすると、まずデータは送り元の所属するローカルネットワーク内にあるルーターに到着し、ルーティングテーブルを書き換えます。送り元をプライベートIPアドレスからグローバルIPアドレスに変更します。そして、データは送り先のルーターに到着します。ここからはMACアドレスがわからないと届けることができません。ここでARPとよばれる処理を行います。ARPは、このプライベートIPアドレスのやつはMACアドレスを教えれくれー!とローカルネットワーク内のすべてのデバイスに対してブロードキャストを行います。
ここで返事が返ってきたMACアドレスが送付先のデバイスだと判断できます。