Skip to the content.

まず結論

ARPとDNSは、どちらも通信先を調べるための仕組みですが、調べる対象が違います。

  • DNS:ドメイン名からIPアドレスを調べる
  • ARP:IPアドレスからMACアドレスを調べる

SG試験では、まずこの対応関係を押さえることが大切です。

名前からIPならDNS、IPからMACならARP

この一文で切り分けると、選択肢をかなり判断しやすくなります。


直感的な説明

Webサイトを見るとき、利用者は通常、IPアドレスではなくドメイン名を入力します。

たとえば、次のような流れです。

www.example.com
↓ DNSで調べる
203.0.113.10
↓ ARPで調べる
対応するMACアドレス

DNSは、人間が覚えやすい名前を、通信で使うIPアドレスに変換する仕組みです。

一方、ARPは、LAN内で実際に通信を届けるために、IPアドレスからMACアドレスを調べる仕組みです。

つまり、DNSとARPはどちらも通信前の確認ですが、役割が違います。


定義・仕組み

DNSとARPの違いを表で整理すると、次のようになります。

項目 DNS ARP
正式名称 Domain Name System Address Resolution Protocol
調べるもの ドメイン名 → IPアドレス IPアドレス → MACアドレス
主な目的 Webサイトなどの宛先IPを知る LAN内で実際に届ける相手を知る
保存される情報 DNSキャッシュ ARPテーブル
関連する攻撃 DNSキャッシュポイズニング ARPスプーフィング

ポイントは、DNSもARPも「対応関係を調べる」仕組みだということです。

ただし、対応させるものが違います。

  • DNSは、名前とIPアドレスを対応させる
  • ARPは、IPアドレスとMACアドレスを対応させる

通信の流れで見る違い

たとえば、PCからWebサイトへアクセスする場合を考えます。

1. DNSでIPアドレスを調べる

まず、PCはドメイン名からIPアドレスを調べます。

www.example.com のIPアドレスは?

これに対してDNSが、対応するIPアドレスを返します。

203.0.113.10 です

ここで行われるのが、名前解決です。


2. ARPでMACアドレスを調べる

次に、PCは通信を実際にネットワークへ送る必要があります。

同じLAN内の相手に送る場合は、相手のMACアドレスを調べます。

外部のWebサイトへ送る場合は、まずデフォルトゲートウェイ、つまりルータのMACアドレスを調べます。

このIPアドレスに届けるため、次に渡す機器のMACアドレスは?

ここで使われるのがARPです。


どんな場面で使う?

DNSとARPは、どちらも利用者が普段意識しないところで自動的に使われます。

場面 使われる仕組み
URLを入力してWebサイトを見る DNS
ドメイン名からIPアドレスを調べる DNS
LAN内の機器へ通信を届ける ARP
ルータのMACアドレスを調べる ARP
名前解決の問題を調べる DNS
IPとMACの対応を調べる ARP

SG試験では、問題文に「ドメイン名」「名前解決」とあればDNSを考えます。

一方で、「MACアドレス」「ARPテーブル」「LAN内」とあればARPを考えます。


DNSキャッシュとARPテーブルの違い

DNSとARPは、どちらも一度調べた結果をしばらく保存します。

ただし、保存する内容が違います。

用語 保存する内容
DNSキャッシュ ドメイン名とIPアドレスの対応
ARPテーブル IPアドレスとMACアドレスの対応

キャッシュやテーブルに保存することで、毎回問い合わせる必要がなくなり、通信を効率よく行えます。

ただし、ここに誤った情報が入ると、別の場所へ通信してしまう危険があります。

この考え方が、DNSキャッシュポイズニングやARPスプーフィングの理解につながります。


攻撃との関係

DNSとARPは、どちらも対応関係を信じて通信するため、偽の情報を入れられると攻撃につながります。

攻撃 だます対応関係 起こること
DNSキャッシュポイズニング ドメイン名とIPアドレス 偽サイトへ誘導される
ARPスプーフィング IPアドレスとMACアドレス 攻撃者の端末へ通信が向く

たとえばDNSキャッシュポイズニングでは、正しいWebサイト名を入力しても、偽のIPアドレスへ誘導される可能性があります。

一方、ARPスプーフィングでは、LAN内でIPアドレスとMACアドレスの対応をだまされ、通信が攻撃者を経由する可能性があります。


よくある誤解・混同

誤解1:DNSもARPも同じ「アドレス変換」

どちらも対応関係を調べますが、変換する対象が違います。

DNSは、ドメイン名からIPアドレスです。

ARPは、IPアドレスからMACアドレスです。


誤解2:ARPはドメイン名からIPアドレスを調べる

これはDNSの役割です。

ARPはドメイン名を扱うのではなく、IPアドレスに対応するMACアドレスを調べます。


誤解3:DNSはMACアドレスを調べる

DNSはMACアドレスを調べません。

DNSが扱うのは、基本的にドメイン名とIPアドレスの対応です。

MACアドレスが出てきたら、ARPを考えます。


誤解4:外部サーバのMACアドレスをARPで直接調べる

ARPは基本的に同じLAN内で使われる仕組みです。

外部のWebサーバへ通信する場合、PCがARPで調べるのは、外部サーバのMACアドレスではなく、通常はデフォルトゲートウェイのMACアドレスです。


SG試験での判断ポイント

SG試験では、問題文のキーワードから切り分けるのが一番確実です。

キーワード 判断する用語
ドメイン名 DNS
名前解決 DNS
IPアドレスを取得 DNS
MACアドレス ARP
ARPテーブル ARP
LAN内の機器 ARP
偽サイトへ誘導 DNSキャッシュポイズニング
通信が攻撃者を経由 ARPスプーフィング

特に、次の2つをセットで覚えておくと便利です。

  • DNSキャッシュ:ドメイン名とIPアドレス
  • ARPテーブル:IPアドレスとMACアドレス

確認問題

PCがWebサイトへアクセスするとき、まずドメイン名からIPアドレスを調べ、その後、LAN内で通信を届けるためにIPアドレスからMACアドレスを調べた。この2つの処理で使われる仕組みの組合せとして、最も適切なものはどれか。

  • ア DNS、ARP
  • イ ARP、DNS
  • ウ DHCP、DNS
  • エ SMTP、ARP
回答と解説 正解は、**ア DNS、ARP**です。 ドメイン名からIPアドレスを調べる仕組みはDNSです。 IPアドレスからMACアドレスを調べる仕組みはARPです。 この問題では、 - ドメイン名 → IPアドレス:DNS - IPアドレス → MACアドレス:ARP という対応関係が決め手になります。

まとめ(試験直前用)

ARPとDNSは、どちらも通信先を調べる仕組みですが、役割が違います。

試験直前には、次の3点で整理しましょう。

  • 名前からIPならDNS
  • IPからMACならARP
  • DNSは名前解決、ARPはLAN内で届ける相手の確認

DNSとARPを混同しないためには、何を何に対応付けるのかを見るのが一番大切です。
問題文に「ドメイン名」があればDNS、「MACアドレス」があればARPをまず考えましょう。