ARP・RARP・GARP

目次

ARPとは

  • ARP(Address Resolution Protocol)
    → IPアドレスから、通信に必要な MACアドレス を調べる仕組み。
  • 理由:LAN通信では、最終的に「MACアドレス」でデータを届ける必要があるため。

例え:IPアドレス=部屋番号、MACアドレス=郵便ポストの位置。部屋番号だけでは手紙を投函できないので、ARPでポストの場所を調べる。

ARPの仕組み(2種類のパケット)

  1. ARPリクエスト(Request)
    • 「このIPアドレスを持っているのは誰?MACアドレスを教えて!」と ブロードキャスト(全員に呼びかけ)。
  2. ARPリプライ(Reply)
    • 該当するPCだけが「それは私です。私のMACは○○です」と ユニキャスト(呼びかけてきたPCだけに返答)。

💡 動作例

  • PC A(192.168.0.1)がPC B(192.168.0.2)に通信したい
  • PC A → 「192.168.0.2 のMACを知ってる人?」と全員にARPリクエスト
  • PC B → 「はい、私のMACは XX-XX-XX-XX-XX-XX」と返す
  • PC A → BのMACアドレスを覚えて通信可能に

ゲートウェイ通信時のARP

  • 相手のIPアドレスが別ネットワークの場合(例:172.16.0.1)
  • PCは直接その相手のMACを探さず、デフォルトゲートウェイ(ルータ) のMACアドレスを取得して通信する。

例え:違う町の人に手紙を出すとき、直接探さず、まず郵便局(ゲートウェイ)に渡す。

RARPとは

  • RARP(Reverse ARP):ARPの逆。
  • MACアドレス → IPアドレス を調べる仕組み。
  • 使われ方:IPアドレスを自分で持てない機器(古い端末など)が、起動時に「私のIPは何ですか?」と聞き、RARPサーバから割り当ててもらう。
  • ※現在はDHCPが主流なので、RARPはほぼ使われない。

GARPとは

  • GARP(Gratuitous ARP) は、ARPの一種。
  • 通常のARPは「相手のIP → MACを知る」ために使うが、GARPは「自分のIPに対して、自分のMACを通知する」仕組み。
  • 主な役割は次の2つ。
    1. IPアドレスの重複検出(同じIPを使っている機器がないか確認)
    2. ARPキャッシュの更新(周囲の機器に自分のMACを知らせる)

💡 初心者ポイント:GARPは「自己紹介」と「住所かぶりチェック」の役割を持つ。

GARPの役割① IPアドレス重複の検出

  • 機器が新しいIPアドレスを設定するとき、同じネットワーク内で同じアドレスを使っている人がいないかを確認。
  • 流れ(例):
    1. 機器が「このIPは私が使っていい?」とGARPを送信
    2. 他に同じIPを使っている機器がいれば応答が返る
    3. 応答がなければそのIPを利用開始できる

💡 例え:教室で「この席使っていい?」と声をかけ、誰も反応しなければ座れる。

GARPの役割② ARPキャッシュの更新

  • ネットワーク機器は「ARPキャッシュ」という表を持っており、IPとMACの対応を覚えている。
  • GARPを送信すると、このキャッシュを一斉に更新させることができる。
  • 利用例:VRRPやHSRPといった冗長化技術で、ルータが切り替わったときに「新しいMACアドレスだよ」と周囲に知らせる。

💡 例え:引っ越しをしたときに、近所に「新しい住所はこちら」と挨拶して回るイメージ。

ARP / RARP / GARP の違い

プロトコル役割
ARPIPアドレスから相手のMACアドレスを知る
RARP自分のMACアドレスから自分のIPアドレスを知る
GARP自分のIPアドレスが重複していないか確認する & 周囲のARPキャッシュを更新する

◆まとめスライド

目次