アドレス解決プロトコル (一般に ARP と呼ばれる) は、インターネット プロトコル (IP) [RFC826]、具体的には IPv4 で使用されるプロトコルで、IP ネットワーク アドレスをデータ リンク プロトコルで使用されるハードウェア アドレスにマッピングします。これは IP ネットワークの不可欠な部分であり、これらのネットワーク上でのデータの正常な送信を可能にします。
アドレス解決プロトコル (ARP) の進化と最初の言及
ARP は、1982 年 11 月にインターネット技術特別調査委員会 (IETF) によって発行された Request for Comments 記事である RFC 826 で初めて定義されました。RFC シリーズは、1969 年から始まったインターネットに関する技術および組織に関する一連のメモです。これらのメモでは、プロトコル、手順、プログラム、概念、会議メモ、意見、時にはユーモアなど、コンピュータ ネットワークのさまざまな側面について説明しています。
アメリカのコンピュータ科学者である David C. Plummer は、MIT 在籍中に ARP を開発したと言われています。このプロトコルは最初の導入以来ほとんど変更されておらず、その中核となる設計原理が永続的な価値を持っていることを証明しています。
アドレス解決プロトコル (ARP) の拡張
ARP は、IP アドレスをメディア アクセス制御 (MAC) アドレスに変換するために使用されます。MAC アドレスは、物理ネットワーク セグメント上の通信用にネットワーク インターフェイスに割り当てられる一意の識別子です。デバイスが同じネットワーク上の別のデバイスにパケットを送信する場合、受信者の MAC アドレスを知る必要があります。
送信側デバイスが受信者の IP アドレス (あらゆる種類の直接 IP 通信に必要) を知っているものの、MAC アドレスを知らない場合は、ブロードキャスト ARP 要求パケットを送信します。この要求は基本的に、「この IP アドレスを持っているのは誰ですか。MAC アドレスは何ですか?」という質問をするものです。要求された IP アドレスを持つデバイスは、MAC アドレスを含む ARP 応答パケットを送り返します。送信側はこの応答を受信すると、提供された MAC アドレスを使用して受信者にパケットを送信できます。
アドレス解決プロトコル (ARP) の機能メカニズム
ARP は主に次の 4 つのステップで動作します。
- 送信者は、同じネットワーク セグメント上のすべてのデバイスに ARP 要求パケットをブロードキャストします。
- 一致する IP アドレスを持つデバイスは要求を受信し、MAC アドレスを含む ARP 応答パケットで応答します。
- 送信者は ARP 応答パケットを受信し、将来の使用に備えて IP-MAC アドレスの関連付けを ARP キャッシュに保存します。
- 送信者は、MAC アドレスを使用してデータを受信者に直接送信できるようになりました。
ARP の機能は、各デバイスが ARP キャッシュを維持することにかかっています。ARP キャッシュは、ブロードキャスト ARP 要求の必要性を減らすために、最新の IP アドレスと MAC アドレスのマッピングを保存するために使用される小さなメモリです。
アドレス解決プロトコル (ARP) の主な機能
-
アドレスマッピング: ARP は主に、ネットワーク層アドレス (IP アドレス) をリンク層アドレス (MAC アドレス) にマッピングするために使用されます。
-
ネットワークの独立性: ARP は、あらゆるネットワーク層とデータ リンク層をサポートするように設計されています。このプロトコルは、特定のネットワーク トポロジやアドレス形式に依存しません。
-
キャッシュストレージ: 各デバイスは、IP アドレスと MAC アドレスのマッピングを保存する ARP キャッシュを維持し、ブロードキャスト ARP 要求の必要性を減らすことで効率を大幅に向上させます。
-
放送リクエスト: ARP 要求は同じネットワーク セグメント内のすべてのデバイスにブロードキャストされ、一致する IP アドレスを持つデバイスが応答できるようになります。
アドレス解決プロトコル (ARP) の種類
ARP にはいくつかの種類があります。
-
ARP: IP アドレスと MAC アドレスのマッピングに使用される標準 ARP プロトコル。
-
プロキシARP: 特定のネットワーク上のデバイスが、そのネットワーク上にないネットワーク アドレスの ARP クエリに応答する手法。
-
無償ARP: これは、IP を MAC アドレスに解決するために使用されるのではなく、通常は重複アドレスの検出に使用される ARP の一種です。
-
リバースARP(RARP): ローカル エリア ネットワーク内の物理マシンがゲートウェイ サーバーの ARP テーブルまたはキャッシュから IP アドレスを取得するよう要求できるプロトコル。
ARPタイプ | 説明 |
---|---|
ARP | 標準的な IP アドレスから MAC アドレスへのマッピング |
プロキシARP | ネットワーク上に存在しないネットワークアドレスのARPクエリに応答します |
無償ARP | 重複アドレス検出に使用 |
RARP | ゲートウェイサーバーのARPテーブルからIPアドレスを取得する要求 |
アドレス解決プロトコル (ARP) の実践: 使用法、問題、および解決策
ARP は、IP アドレスを Ethernet MAC アドレスに変換する必要がある Ethernet ネットワークで広く使用されています。ただし、ARP のブロードキャストの性質がセキュリティの脆弱性の原因となる可能性があります。たとえば、ARP スプーフィング攻撃により、悪意のあるユーザーが自分の MAC アドレスを正当なユーザーの IP アドレスにリンクできるようになります。
ARP スプーフィング攻撃を防止または軽減する方法はいくつかあります。
-
静的ARP: 管理者は、着信 ARP パケットによって変更できない静的エントリを ARP キャッシュに作成できます。
-
ARP 検査: デバイスは、ARP キャッシュを更新する前に ARP パケットを検査し、そのデータを検証するように設定できます。
-
セキュリティ対策: ARP スプーフィングを防止するために、Dynamic ARP Inspection (DAI) などのプロトコルを使用できます。DAI は、IP アドレスと MAC アドレスのバインディングが無効な ARP パケットを傍受、ログに記録、破棄します。
類似プロトコルとの比較
ARP は IPv4 ネットワークで IP アドレスを MAC アドレスにマッピングするために使用されますが、IPv6 ネットワークでは Neighbor Discovery Protocol (NDP) と呼ばれる同様のプロトコルが使用されます。
プロトコル | ネットワークタイプ | 主な機能 |
---|---|---|
ARP | IPv4 | IPからMACアドレスへの解決 |
新民主党 | IPv6 | IPからMACアドレスへの解決 |
将来の展望: 進化するテクノロジーにおけるARP
IPv6 の採用が進むにつれて、IPv6 はアドレス解決に近隣探索プロトコル (NDP) を使用するため、ARP の役割は時間とともに減少する可能性があります。ただし、IPv4 と ARP は依然として広く使用されており、どちらも近い将来にネットワーク インフラストラクチャの重要なコンポーネントであり続けると思われます。
さらに、Dynamic ARP Inspection (DAI) や Secure ARP (S-ARP) などの ARP のセキュリティ対策が継続的に開発されていることから、ARP のセキュリティと機能は今後も強化されていくと考えられます。
ARP とプロキシ サーバー
プロキシ サーバーは、特に他のネットワークへのゲートウェイとして機能するシナリオで、ARP を操作に活用できます。プロキシ ARP は、プロキシ サーバーが別のマシン宛の ARP 要求に応答する手法です。これにより、2 つのネットワークが両側のホストに対して 1 つのネットワークとして表示されます。このようにして、プロキシ サーバーは異なるネットワーク間でトラフィックをルーティングし、接続性とセキュリティを強化できます。
関連リンク
ARP の詳細については、次のリソースを参照してください。
アドレス解決プロトコル (ARP) の歴史、機能、種類、およびアプリケーションについて詳細に説明したので、この重要なネットワーク プロトコルについて総合的に理解していただけたと思います。ネットワーク エンジニア、学生、または単にネットワークの機能に興味がある人にとって、ARP の知識はネットワーク通信を理解する上で不可欠です。