インターネット層で 2 台のサーバー間の TCP/IP 接続が成功し、送信元アドレスと宛先 MAC アドレスが TCP/IP パケットに添付されている場合、2 台のサーバー間で MAC アドレスはどのように共有されるのでしょうか?
答え1
コンピュータには IP とネットワーク マスクがあります。たとえば、IP は 192.168.0.10、ネットワーク マスクは 255.255.255.0 (または CIDR /24) です。つまり、最初の 3 バイト (トリプル) はネットワークを示し、最後のバイトはネットワーク内のコンピュータを識別します。
ターゲット アドレスが同じネットワーク内にある場合、ARP パケットはローカル ネットワークのブロードキャスト アドレス (この場合は 192.168.0.255) に送信されます。つまり、すべてのローカル アドレスに送信されます。
who has 192.168.0.27? Please tell 192.168.0.10, my MAC 01:00:f2:10:21:1d.
アドレスを持つコンピュータは、含まれている MAC アドレスに応答し、MAC アドレスと IP アドレスのペアが一定期間キャッシュされます。arp -a を参照してください。
ターゲット IP アドレスが同じネットワーク内にない場合 (ネットワーク マスクによると、たとえば、ターゲットが 8.8.4.4 で、特定のルートがない場合)、IP パケットはデフォルト ゲートウェイに送信され、ターゲットにルーティングされます。
答え2
IPアドレスを持つサーバーの場合あIPアドレスでサーバーと通信する必要があるB、 それから:
- サーバーAはARPパケットの問い合わせIPアドレスBのMACは何ですか?このパケットはブロードキャスト イーサネット フレーム内に入ります。
- フレームがブロードキャストされると、同じ LAN 上の全員がそれを聞くため、サーバー B は自身の MAC アドレスで応答し、さらに B は A の MAC アドレスを学習します。
A と B は、対応する MAC - IP を ARP テーブルに入力します。このエントリは、A と B 間の最後の通信後の限られた時間だけテーブルに保持されるため、テーブルは適切なサイズを維持します。