IPからMACアドレスへの変換が必要なのはなぜですか?


9

TCP / IPプロトコルを使用するネットワークで、IPアドレスがMACアドレスに変換されるのはなぜですか?

つまり、すべてのデバイスがそのIPを知っている場合、なぜMACアドレスをさらに使用し、IP番号をアドレスとして直接使用しないのですか?

回答:


18

主な違いは、IPアドレスはネットワークプロトコルであるIPによって使用され、MACアドレスはイーサネットリンク層(2)プロトコルによって使用されることです。IPは異なるレイヤー2プロトコルで実行できるため、「メディアアクセス」機能は含まれていません。IP over Serial回線、イーサネット、DSl、ISDNなどを実行できます。

たとえば、DHCPはイーサネット経由で動的IPアドレスを提供します。DHCPサーバーは、PCにIPアドレスを割り当てるためにMACアドレスを必要とします。


2
+1これは本当に重要な問題です。IPは異なる物理層で実行できます。物理層が異なれば、物理アドレッシングも異なります。MACはイーサネットで使用されるアドレス指定です。また、BootP、DUX、IPXなど、IPを使用しないイーサネットベースのプロトコルもあります。同じ物理イーサネットがIPv4とIPv6を同時に処理する場合もあります。しかし最終的には、すべてがイーサネット上のMACに配信されます。
Rob Napier、

また、異なる時間に異なる部分が表示されることを理解することも重要です。コンピューターは、応答する必要があり、MACをまだ知らない誰かからパケットを受信する可能性があります(表示されるMACは最も近い接続デバイスからのものですが、それは重要ではありません)。arpまたはその逆とRarpが必要です。または、ホスト名を持っているが、Macまたは.....任意の数の異なる構成およびプロトコルコンボが必要
PsychoData


4

これを確認するもう1つの方法は、逆の質問をすることです。ハードウェアにすでにMACアドレスが割り当てられているのに、なぜIPアドレスが必要なのですか。

これはSecurity Nowポッドキャスト(HTMLトランスクリプト)のエピソード#29で議論されました。

MACアドレスを使用すると、コンピューターは単一のマシンと直接通信できます。しかし、そこに到達する方法を知るためには、パケットをそこにルーティングする必要があります。各コンピューターにグローバルMACアドレスルックアップテーブルを置くことは現実的ではありません。

一方、IPアドレスは階層的に編成されています。私たちのコンピューターは、LAN上にあるIPアドレスを判別でき、残りはLANのゲートウェイ(ホームルーターなど)に送信されます。LANを離れると、後続のルーターはIPアドレスを調べて、パケットを別のルーターにルーティングします。最終的に、LANに宛先IPアドレスを持つルーターは、MACアドレスを識別し、パケットを宛先コンピューターに送信できます。


MACアドレスがIPのようにスマートで、階層的に編成されるように実装されていないのはなぜですか?彼らは単に不注意でしたか、それを不可能にする制限がありますか?
Pacerier

2
MACアドレスはハードウェアの製造元によって割り当てられ、ネットワークデバイスがどこに展開されるのか、どのような構成であるのかはわかりません。MACアドレスでネットワークカードの製造元を特定できるサイト(このサイトなど)はたくさんあります。
Doug Harris

良い議論(そして説明thx!)
パチェリエ2012年

3

これらは、ネットワークスタック内のさまざまなレイヤー用です。MACアドレスはイーサネットネットワーキングレイヤーに関するもので、IPアドレスはIPレイヤーに関するものです。イーサネットがないためMACがない場合、SLIPなどのさまざまなトランスポートでIPを使用できます。必要に応じて、IP over Ethernetとは異なるプロトコルを使用することもできます。

考えてみれば、SLIP接続を介してダイヤルインすると、1つのIPパケットがMACに関連付けられていない状態で開始し、インターネットを介して最終的なIP宛先に転送されるときにルーター間でホップするため、異なるMACを持つ可能性があります。


3

MACアドレスは、マシンに一意であることが保証され(ネットワークカードには通常MACアドレスが含まれています)、変更されませんが、任意のマシンでIPアドレスを再定義できます。

さらに、パブリックIPアドレスはネットワークアドレス変換を使用して会社全体で共有できるため、パブリックIPアドレスがマシンまたは個人と1対1で対応しているとは限りません。


3

私は別の質問であなたの質問に答えることができます:電話番号を持っているのに、なぜ社会保障番号/国民識別番号が必要なのですか?

つまり、目的は異なります。1つはあなたが誰であるか(SSN、MAC)を識別するためのものであり、もう1つはあなたへの連絡方法(電話番号、IPアドレス)を定義するためのものです。

さらに、MAC(異なるタイプのリンクレイヤー)を持っていない場合にインターネットで誰かに連絡するのと同じように、SSNを持っていない場合(たとえば、国が異なる場合)に電話で連絡を取ることができます。 。リンク層が異なれば、データパケットの宛先と送信元を識別する方法も異なります。


1

IPは、いずれかのOSやネットワークカードのドライバソフトウェアで定義された、またはネットワークによってあなたに与えられ、かつ動的に変更することができています。MACは、すなわち、ハードウェア、ネットワークカードの識別子です。それらの間には1対1の関係はありません。


0

stackoverflow.comはローカルネットワークにないため、MACアドレスはわかりません。MACアドレスは、チェーン内のネクストホップの識別子として使用されます。「IP」は、パケットを送信する方向(次に使用するゲートウェイ)を示すプロトコルで使用されます。


0

リンク層での通信にはMACアドレスが必要なため(IPアドレスはIP層の1層上で使用されます)。


0

例を見てみましょう

あなたが会社での仕事に応募した場合、彼らはあなたのアイデンティティを知らなくてもあなたにそれを与えますか?確かに...ではないので、あなたの実際の身元証明はMacアドレスです

そして、あなたが会社に参加すると、彼らはその会社の従業員の間で通信するために別の従業員IDを与えます。これはIPアドレスです。

会社を変更しても従業員IDは変更できますが、あなたに関する実際の情報(年齢、名前など)を変更することはできません。


Soooo私は実際のアイデンティティを変更できますか?:Pしかし、これは実際の答えではなく、単なる奇妙で間違ったメタファーです
PsychoData

0

あなたの質問は非常に正当なものです!真実は、理論的にはIPのみのシステムを作成し、MACアドレス指定システムを必要とせずに適切に機能できることです。データリンク層は、MACフィルタリングを無視して、この機能をネットワーク層に任せて、独自のIPアドレスに基づいてフィルタリングすることができます。そのようなシステムは、UART(例えばRS232)ポートを介したデバイスのリンクに基づくネットワークなど、過去に存在していました。明らかに、これらのネットワークインターフェイスは、MACアドレスやその他の形式の一意で物理的なIDを伝送しませんでした。ただし、デバイスが各デバイスに許可された所定の数を超えるIPアドレスを取得しないようにする方法がないため、たとえばDHCPサーバーによって悪夢が集中的にIPアドレスを割り当てる可能性があります。また、各デバイスを明確かつ個別に識別することは困難です。少なくともサブネットワーク内で一意のMACアドレスは、一意の識別トークンとして機能します。もちろん、デバイスに個別にIPアドレスを割り当てると問題が解決する可能性がありますが、ネットワーク上に多数のデバイスが存在する場合、そのようなスキームを確立して維持することは現実的ではなくなります。


-3

IPアドレスは郵便番号、国コード、ISDコードのようで、wchichは場所のアドレスを簡略化します。そうしないと、すべてのMACアドレスを並べ替えたり、正確な場所を特定したりするのが非常に難しくなります。ローカルコンピューター上のMACアドレスの巨大なデータベース。

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