
イーサネット MAC アドレスが必要な理由がわかりません。すべてのコンピューターを統合ネットワークに接続し、IP アドレスを使用して通信することはできないのでしょうか?
たとえば、イーサネットには次のようなメカニズムがあります。
- IP
192.168.1.1
( ) を持つコンピュータが( )X.1
にパケットを送信したい192.168.1.2
X.2
X.1
ARPを使用してMACアドレスを取得するX.2
- これを行うには、
X.1
ネットワーク内のすべてのコンピュータにパケットを送信する必要があります。応答するのは1台だけです。 X.1
MACを取得しパケットを送信する
たった 1 つのステップを実行するだけで、もっと簡単になるのではないでしょうか。
X.1
ネットワーク内のすべてのコンピュータにパケットを送信します。 1 台のみがX.2
それを処理し、他のコンピュータはそれを無視します。
補足的な質問としては、すべてのデバイスが固有の MAC アドレスを持っているのに、なぜ IP アドレスが必要なのか、というものがあります。
答え1
の異なるネットワーク層異なるテクノロジーと交換できるようにするために存在します。
ここで言及している 2 つのレイヤーは、レイヤー 2 と 3 です。このシナリオのレイヤー 2 はイーサネット (MAC アドレスはここから発生します) であり、レイヤー 3 は IP です。
イーサネットは、ブロードキャスト ネットワーク「データリンク」に接続されたネットワーク デバイス間のローカル レベルでのみ機能しますが、IP はルーティング可能なプロトコルであるため、リモート ネットワーク上のデバイスをターゲットにすることができます。
それぞれの要件は異なります。イーサネットは、ネットワーク デバイス間でパケットを送受信できるようにする一連のテクノロジを指定しますが、IP は、データ パケットが複数のネットワークを通過できるようにするプロトコルを定義します。
どちらも他方に依存しておらず、それがネットワークに柔軟性を与えています。たとえば、インターネット サービスへの接続にイーサネット経由の IP を使用することを選択できますが、社内ネットワークでは紙経由の IP を使用することを選択できます。この場合、誰かが各パケットの内容を書き留め、物理的に別のマシンまで歩いて行って入力します。明らかに、これは特に高速ではありませんが、紙片を持ち歩いている人が IP ルーティング ルールを遵守している限り、それは依然として IP です。
現実の世界では、すでに 2 つの異なるデータリンク プロトコルが使用されています (ただし、アドレス指定スキームは同じです)。802.3 - イーサネットと 802.11 - Wi-Fi です。
IP は、基礎となるレイヤーが何であるかを気にしません。
同様に、IPは異なるネットワーク層プロトコルに置き換えることができます(すべての参加者に対してそれが実行されることを条件とします)。例えば、ATM。
レイヤー 2 とレイヤー 3 の両方を網羅するプロトコルの作成を直接妨げるものは何もありませんが、柔軟性が低くなり、魅力も低下し、使用される可能性も低くなります。
答え2
パケットを処理するか無視するかの決定はどこで行われるのでしょうか? 満足のいく答えはありません。
1) スイッチ内ですか? そうすると、スイッチは、どのコンピュータがどのパケットに興味があるかを決定するすべてのプロトコルを理解する必要があります。 スイッチのコストが増加し、速度が低下するだけでなく、IP プロトコルの変更の展開がはるかに困難になります。
2) イーサネット インターフェイスのハードウェアではどうでしょうか。すべてのデータ パケットがすべてのマシンに送信されるので、ネットワークの速度が大幅に低下します。WiFi や低速のブリッジによるネットワークのブリッジングなどのテクノロジは不可能になります。異なる速度で動作するイーサネットを相互運用することは不可能です。IPv6 や IP マルチキャストなどのテクノロジでは、すべてのイーサネット エンド ステーションに導入するためにハードウェアの変更が必要になります。
3) ソフトウェアでは? そうですね、この場合、ネットワーク インターフェイスの割り込みの数が大幅に増えるため、コンピューターの速度が大幅に低下します。前述のブリッジ、VPN、Wi-Fi に関する懸念もすべて問題になります。
これらすべてにより、イーサネットは IP なしでは使用できなくなり、IP を変更するにはイーサネットの変更が必要になります。うーん。
関心の分離は良いことです。
答え3
IPアドレスとMACアドレスは、異なるレイヤーで動作します。インターネット プロトコル スイートMAC アドレスは、レイヤー 2 で同じブロードキャスト ネットワーク内のマシンを識別するために使用され、IP アドレスはレイヤー 3 で異なるネットワーク全体のマシンを識別するために使用されます。
コンピュータに IP アドレスがあっても、各レイヤーが下位レイヤーを使用しているため、同じネットワーク上の他のマシンを見つけるには MAC アドレスが必要です。前述のページには、プロトコル スイートを詳細に説明したわかりやすい図がいくつか掲載されています。
答え4
イーサネット ネットワークは、規模が大きくなるにつれて輻輳の問題に直面します。その結果、ネットワークが詰まり、遅延が発生する可能性があります。これが、サブネットの概念が生まれた要因の 1 つです。ただし、サブネットでは、パケットを 1 つのサブネット内のマシンから別のサブネット内のマシンに移動できるようにするには、ルーターと呼ばれる追加のエンティティが必要です。
イーサネット ケーブルが張る距離も大きな懸念事項の 1 つです。一定の制限を超えると、伝送の成功が制限される可能性があるからです。これにより、ハブ/リピーターという新たなエンティティが登場しました。
すべての通信メカニズムが通信に MAC アドレスを使用するわけではないことに注意してください。PPP と HDLC は識別に MAC アドレスを使用しません。
また、一部のネットワークではイーサネットが使用されないことに注意してください。トークン リング ネットワークでは、異なるデータ リンク層が必要です。
ネットワーク B のデバイスの MAC アドレスを使用してネットワーク A からネットワーク B のデバイスにパケットを送信すると、そのパケットはネットワーク A 自体でドロップされます。ネットワーク A とネットワーク B の間にルータがある場合でも、ルータは MAC アドレス宛ての異なる IP アドレスのパケットを受信することで動作するため、ルータはパケットをドロップすることに注意してください。
上記のシナリオから、インターネットはさまざまなローカル/プライベート ネットワークがあるため、フラットなネットワークではないことは明らかです。送信元と送信先の間にもさまざまなネットワーク エンティティが存在します。
インターネットはフラットなネットワークではないため、MAC アドレスはすべてのタイプの通信に使用されるわけではなく、一部のネットワークではイーサネット以外の異なるデータ リンク層が必要になります。ノードの場所に関係なく、目的のノードにルーティングするには IP アドレスが必要であり、これはネットワーク層で実現されます。
また、同様の議論については、https://stackoverflow.com/questions/26290069/arp-vs-ip-why-do-we-need-both