sunny3210’s blog

IT知識に興味がわいてきた。ここで通信分野の関連記事を紹介していきます! よろしくお願いいたします。

ARPとは:定義・仕組み・RARPとの違いをわかりやすく解説

 ご存じのように、OSI参照モデルでは、ネットワークの機能が7つの階層に分割され、それぞれの階層で異なる通信機能が実行されています。また、プロトコルはパッケトを送信する際に、まずIPアドレス(第3層)とMACアドレス(第2層)のヘッダーをカプセル化しますが、プロトコルは宛先ノードのIPアドレスしか知らず、MACアドレスは知りません。したがって、MACアドレスを取得するために、「ARP」を使用しなければなりません。この記事では、「ARP」について詳しく説明します。

ARPとは

 ARPは「アープ」と読み、「Address Resolution Protocol」の略語で、イーサネットIPアドレスからMACアドレスを取得するためのアドレス解決プロトコルです。例えば、コンピューターがフレームを送信する際に、宛先のIPアドレスを基にして、宛先のMACアドレスを求めるために使われています。したがって、ARPイーサネットでIPパッケトを転送する時に不可欠な重要なプロトコルです。

MACアドレスIPアドレスの役割

 周知のように、インターネットの上で通信を実行させるためには、MACアドレスIPアドレスが必要です。

MACアドレス

 MACアドレスは「Media Access Control address」の略語で、ネットワークに接続するすべての機器に割り当てられる固有の識別番号です。イーサネット無線LANなどに接続するノードを識別するため利用されています。

f:id:sunny3210:20220218155805j:plain

 上記のように、MACアドレスは48ビット(6バイト)で構成され、0~9とA~Fの16文字で表されます。前半の6桁はベンダーコードでメーカやブランドが判断できます。後半の6桁は所属ネットワーク機器の型番や詳細が分かります。この番号は世界中で唯一の番号となります。

IPアドレス

 IPアドレスは「Internet Protocol Address」の略語で、インターネット プロトコル(IP)における通信相手先を識別するための番号です。

f:id:sunny3210:20220218155820j:plain

 上記のように、IPアドレスは3桁区切り・12桁の数字で表わされ、32ビットの二進数で構成されます。グローバルIPアドレスとプライベートIPアドレスの2種類に分けられ、MACアドレスと同様にIPアドレスも世界中で唯一の番号となります。関連記事:「MACアドレスの役割・更新方法、IPアドレスとの違いは?」

役割

f:id:sunny3210:20220218155914j:plain

 上記のように、IPアドレスはPCの位置を識別するためのインターネットの情報で、最終目的地の宛先を示しています。それに対して、MACアドレスは隣接のインターネット機器の間を通信するための重要な情報で、その次の宛先を示しています。したがって、インターネット上で通信を行うには宛先IPアドレスに対応するMACアドレスを求めるために、「ARP」が必要です。

ARPの仕組み

 ARPの仕組みは複雑ではありません。「ARPリクエスト」と「ARPリプライ」の2ステップをして、IPアドレスからMACアドレスを取得できます。

ARPリクエス

 まず、ARPリクエストをする機器は宛先のMACアドレスの情報を取得するためには、ネットワーク上で「192.168.10.5のMACアドレスを教えてください」と問い合わせを行います。

f:id:sunny3210:20220218155948j:plain

 上記のように、その際、ARPリプライのパッケトはブロードキャストで、ネットワーク全体の端末機器へ送信されます。ARPリクエスト際のARPパッケトは以下のように設定されています。

宛先IPアドレス:PC3のIPアドレス 宛先MACアドレス:未設定(00ー00ー00ー00ー00ー00)
送信元IPアドレス:PC1のIPアドレス 送信元MACアドレス:PC1のMACアドレス

ARPリプライ

 ARPリプライとはARPリクエストへの応答です。ARPで要求されたIPアドレスが自身のIPアドレスとは違う場合は応答せず無視しますが、自身のIPアドレスと一致した場合は、MACアドレスを送信するために送信先に応答を返信します。

f:id:sunny3210:20220218160001j:plain

 上記では、PC3はPC1に対して、ARPリプライのパケットを送信しています。ARPリプライ際のARPパッケトは以下のように設定されています。

ARPテーブル(対応表)

 ARPによって、「ARPリクエスト」「ARPリプライ」のやり取りをして、得られた情報が自動的にARPテーブルと呼ばれるIPアドレスMACアドレスの対応表に記録されています。

ARPテーブルによって、再び同じ送信先に送る際にはARP機能が必要なく、次回からより早く通信が実現でき、効率を上げられます。ただし、ARPテーブル(対応表)は永遠に保存するわけにはいかないため、一時経つと削除するようになります。

RARPとは

 RARPは「ラープ」と読み、「Reverse Address Resolution Protocol」の略語で、ARPとは逆の動作でイーサネットMACアドレスからIPアドレスを取得するためのプロトコルです。主にディスクレスパソコンのような機器に使用されています。例えば、ディスクレスパソコンのような機器にはIPアドレスなどのデータを保存するハードがないため、ネットワークに参加する段階では、自分のMACアドレスしかわかりません。自分のIPアドレスを知りたいために、「RARP」が必要です。

RARPの仕組み

 RARPの動作は次の「RARPリクエスト」「RARPレスポンス」の2つのやり取りがあります。

RARPリクエス

 自分のMACアドレスを入れたRARPリクエストパケットをブロードキャストで送出します。ネットワークで「私のMACアドレスは18:3e:ef:b9:37:11です。私のIPアドレスを教えてください。」と問い合わせを行います。

RARPレスポンス

 RARPサーバがそのパケットを受け取り、問い合わせのMACアドレスを参照して、そのMACアドレスに対応するIPアドレスを返信します。

 返送されたパケットのIPアドレスを自分のIPアドレスとしてネットワークの設定します。

f:id:sunny3210:20220218160048j:plain

 しかし、今のネットワーク環境においてはディスクレス機器が活躍する機会が減っています。したがって、上記で述べたようなディスクレスの機器に使用されるRARP機能は現在、ほぼ使用されていません。


低消費電力 & 完全なパッシブ & 省スペース

www.fs.com