ARP

luagate/arp-introARP入門23ネットワーク

上から下へ、全 23 枚そのまま並べています。

発表モードで開く

ARP入門

ARP

IPとMACの橋渡し 〜宛先を探すしくみ〜

1
1

目次

今日の流れ

1. IPとMACの復習と困りごと

2. ARPの要求と応答の流れ

3. ARPテーブルと網をまたぐ場合

4. セキュリティと確認コマンド

5. まとめと振り返り

2
2
ARP入門 - イントロ

今日のゴール

この時間で身につけてほしいことです。

  • IPアドレスからMACアドレスを知る仕組みが分かる
  • ARPが「IPとMACの橋渡し」だと分かる
  • ARP要求と応答の流れをイメージできる
  • ARPテーブルの役割が分かる
  • 網をまたぐときの宛先の探し方が分かる
10
3
ARP入門 - イントロ

復習 IPとMAC

前のテーマで学んだIPとMACの違いを思い出すところから始めます。

  • IPアドレスは場所を示す住所だった
  • MACアドレスは機器を見分ける固有の番号だった
  • 網をまたぐ届け方はIPで決める
  • 同じ網の中の届け方はMACで行う
  • この2つをつなぐのが今日のARP
11
4
ARP入門 - イントロ

困りごと 宛先のMACが分からない

同じ網の中へ届けたいのに、相手のMACアドレスが分からないという問題が起きます。

  • 送りたい相手のIPアドレスは分かっている
  • でも同じ網の中はMACで届ける必要がある
  • その相手のMACアドレスが分からない
  • 住所は分かるが顔が分からない状態
  • この困りごとを解決するのがARP
12
5
ARP入門 - イントロ

ARP とは

IPアドレスを手がかりに、相手のMACアドレスを問い合わせて調べる仕組みです。

ARP(Address Resolution Protocol)

知っているIPアドレスから、同じ網の中の相手のMACアドレスを調べる仕組み。網の全員へ「このIPの人はいますか」と呼びかけ、本人が自分のMACを返す。住所を頼りに顔を確認する作業に近い。

IPからMACを調べる仕組み

網の全員へ問い合わせる

本人だけがMACを返す

IPとMACの橋渡しをする

英語では Address Resolution Protocol

13
6

ARP入門 - 流れ

2

第2部 要求と応答

呼びかけて答えてもらう

20
7
ARP入門 - 流れ

ARP要求と応答の流れ

網の全員へ呼びかけ、本人だけが自分のMACを返すという2段階の流れです。

1. 困る

宛先IPは分かるがMACが不明

2. ARP要求

このIPの人はいますかと全員へ呼びかける

3. ARP応答

本人がはいと自分のMACを返す

4. 送れる

得たMAC宛にデータを届ける

21
8
ARP入門 - 流れ

全員に聞いて本人だけが答える

ARP要求は網の全員に届きますが、答えるのは尋ねられたIPを持つ本人だけです。

  • ARP要求は網の全員に届く(一斉呼びかけ)
  • 関係ない機器は聞き流す
  • 尋ねられたIPの本人だけが応答する
  • 応答には本人のMACアドレスが入っている
  • これで送信元はMACを知り通信できる
22
9
ARP入門 - 流れ

ARPテーブル(キャッシュ)

一度調べたIPとMACの対応を、しばらく覚えておくメモ帳です。

ARPテーブル(ARPキャッシュ)

一度ARPで調べたIPアドレスとMACアドレスの対応を、一定時間保存しておく表。次に同じ相手へ送るときは問い合わせを省けるので速くなる。電話帳に番号を控えておくイメージ。

調べたIPとMACの対応を保存する

次は問い合わせを省けて速い

一定時間が過ぎると消える

古い情報で誤らないよう更新される

電話帳に控えておくイメージ

23
10
ARP入門 - 流れ

ARPテーブルの例

調べたIPアドレスとMACアドレスの対応を控えた表です。次回はここを見て省略します。

IPアドレス
対応するMAC

相手A

192.168.1.20

aa-bb-cc-11

相手B

192.168.1.30

dd-ee-ff-22

ルーター

192.168.1.1

11-22-33-44

24
11

ARP入門 - 応用

3

第3部 網をまたぐとき

出口の顔を聞く

30
12
ARP入門 - 応用

同じ網か別の網か

宛先が同じ網にいるか、別の網にいるかで、ARPで聞く相手が変わります。

同じネットワーク内

  • 宛先の本人へ直接ARPする
  • 本人のMACを得る
  • そのまま相手へ届ける
  • 橋渡しは1回で済む

別ネットワークへ送る

  • まず出口のルーターへ渡す
  • ルーターのMACをARPで聞く
  • ルーターに任せて先へ送る
  • 網をまたいで宛先へ向かう
31
13
ARP入門 - 応用

別ネットワークへ送る場合

宛先が別の網にいるときは、本人ではなく出口であるルーターのMACを聞きます。

  • 宛先のIPが別の網だと気づく
  • 本人へは直接届けられない
  • まず出口のルーターへ渡せばよい
  • そこでルーターのMACをARPで調べる
  • あとはルーターが先のルーティングを担当する
32
14
ARP入門 - 応用

ARPスプーフィング

ARPの素朴さを悪用し、にせの応答で通信を盗み見ようとする攻撃です。

ARPスプーフィング

攻撃者がにせのARP応答を流し、自分を正しい相手だと思い込ませて通信を横取りする手口。ARPは応答を素直に信じるため起こりうる。なりすましの電話で個人情報を聞き出すイメージ。

にせのARP応答を流す

自分を正しい相手と思わせる

通信を横取りして盗み見る

ARPが応答を素直に信じる弱点

対策に通信の暗号化や監視がある

33
15

ARP入門 - 実践

4

第4部 確認してみる

arpコマンドで見る

40
16
ARP入門 - 実践

確認 arpコマンド

自分の機器が覚えているIPとMACの対応表を表示できます。学んだ内容を目で確かめられます。

bash
# 覚えているIPとMACの対応を表示する
arp -a

# 表示の例
# 192.168.1.1 at 11:22:33:44 ...
# 左がIPアドレス、右が対応するMAC

# 対応を消してもう一度学ばせる
arp -d 192.168.1.20
41
17
ARP入門 - 実践

図解 ARPの流れをおさらい

宛先のMACが分からない状態から、データを送れるようになるまでの一連の流れです。

宛先IPは分かるがMACが不明
網の全員へARP要求を出す
本人が自分のMACを応答する
得たMACをテーブルに控える
そのMAC宛にデータを届ける
42
18
ARP入門 - 実践

2回目以降が速くなるイメージ

一度ARPテーブルに控えておくと、2回目以降は問い合わせを省けて速くなります。あくまでイメージです。

10 手間(イメージ)86420
10手間(イメージ)
1手間(イメージ)
1回目(要求あり)
2回目(控えを利用)

出典: ARPキャッシュの効果の傾向を示す概念図(概算)

43
19
ARP入門 - まとめ
クイズ

振り返りクイズ

今日の内容を確認しましょう。

ARPは、何を手がかりにして何を調べる仕組み?

A
MACを手がかりにIPを調べる
B
IPを手がかりにMACを調べる
C
名前を手がかりにIPを調べる
D
ポート番号を手がかりにIPを調べる
50
20
ARP入門 - まとめ
答え

振り返りクイズ 解答

ARPは、何を手がかりにして何を調べる仕組み?

A
MACを手がかりにIPを調べる
B
IPを手がかりにMACを調べる
C
名前を手がかりにIPを調べる
D
ポート番号を手がかりにIPを調べる

ARPは、知っているIPアドレスを手がかりに、同じ網の中の相手のMACアドレスを調べる仕組みです。網の全員へ呼びかけ、尋ねられたIPの本人だけが自分のMACを返します。

51
21
ARP入門 - まとめ

質疑・次回予告

今日のまとめと、次に学ぶテーマです。質問があればここで受け付けます。

今日のおさらい
  • ARPはIPからMACを調べる橋渡し
  • 全員へ聞いて本人だけが答える
  • 調べた対応はテーブルに控える
次回予告
  • DHCP 〜IPアドレスの自動配布〜
  • IPが自動で割り当てられる仕組みを学ぶ
52
22
"

ARPはIPという住所を頼りに、相手の顔であるMACを確かめる橋渡し。網の全員へ問いかけ、本人だけが静かに名乗り出る。この小さなやり取りが、同じ網の中の通信を成り立たせています。

ARP入門

53
23