スポンサード リンク

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

スポンサード リンク
-- : -- : -- | スポンサー広告 | page top↑
スポンサード リンク

Wiresharkで見る-ARPのパケット(1/2) ARP要求パケット

WiresharkでARPのパケットをキャプチャして、それをARPのパケットフォーマットと対照しながら観察します。記事が長くなったので2分割し、最初の記事ではARP要求パケットを、次の記事ではARP応答パケットについて観察します。

Wiresharkで見たARPのパケット

ARPのパケットをWiresharkで見ると次のようになっています(横に長かったので分割しました)

ARPパケットのSourceとDestination

ARPパケットのInfo

今回はこの中のARP要求パケット(No.1)について観察します。

ARPの概要

まず、ARPの概要を記します。ARPは宛先IPアドレスを元にして、次にパケットを送るべきホストのMACアドレスを調べるためのプロトコルです。

  1. 「IPアドレスxxx.xxx.xxx.xxxのホストが持つMACアドレスは何ですか?」とブロードキャストで聞く(ARP要求パケット)
  2. そのIPアドレスを持つホストは「xx:xx:xx:xx:xx:xxですよ。」と答える(ARP応答パケット)

ARPのパケットフォーマット(*1)

次に、ARPのパケットフォーマットを確認しておきます。この表は横を32bitとして整理してあります。

ハードウェアタイプ プロトコルタイプ
HLEN(*2) PLEN(*3) オペレーション
送信元のMACアドレス
送信元のMACアドレス 送信元のIPアドレス
送信元のIPアドレス 探索するMACアドレス
探索するMACアドレス
探索するIPアドレス

Wiresharkで見たARP要求パケット

では、ARP要求パケットを見てみましょう。

ARP要求パケット ARP要求パケット詳細

イーサネットヘッダ

ARPパケットにはデータリンク(イーサネット)のヘッダがつきます。

ff ff ff ff
ff ff 00 0b
97 ** ** **
08 06
宛先MACアドレス: Broadcast (ff:ff:ff:ff:ff:ff)

ARP要求パケットをどのホストへ送ればよいのかわからないので、ブロードキャストをして同じセグメント内のすべてのホストに送ります。

送信元MACアドレス: Matsuhi_33:bd:52 (00:0b:97:**:**:**)

ARP要求パケットを送信したホスト(私のコンピュータ)のNICにつけられているMACアドレスです。ベンダ識別子"Matsuhi(00:0b:97)"はNICが松下電器(Panasonic)で作られたことを表しています。MACアドレスの後半24bit(ベンダ内の識別子)もWiresharkで表示されますが、ここでは*印で隠しました。

タイプ: ARP (0x0806)

ARPであることを表す"0x0806"が入っています。

ARP要求パケット

00 01 08 00
06 04 00 01
00 0b 97 **
** ** c0 a8
00 04 00 00
00 00 00 00
c0 a8 00 01
ハードウェアタイプ: Ethernet (0x0001)

データリンクにイーサネットを用いているので、Ethernetのハードウェアタイプ"0x0001"が入っています。

プロトコルタイプ : IP (0x0800)

IPのプロトコルタイプ"0x0800"が入っています。

HLEN: 6

MACアドレスのサイズは6オクテット(48bit)ですので、'6'が入っています。

PLEN: 4

現在使われているIPv4のサイズは4オクテット(32bit)ですので、'4'が入っています。

オペレーション: request (0x0001)

ARP要求パケットのオペレーション'1'が入っています。

送信元のMACアドレス: Matsushi_**:**:** (00:0b:97:**:**:**)

ARP要求パケットを送信したホスト(私のコンピュータ)のNICにつけられているMACアドレスです。ベンダ識別子"Matsuhi(00:0b:97)"はNICが松下電器(Panasonic)で作られたことを表しています。MACアドレスの後半24bit(ベンダ内の識別子)もWiresharkで表示されますが、ここでは*印で隠しました。

送信元のIPアドレス : 192.168.0.4 (192.168.0.4)

ARP要求パケットを送信したホスト(私のコンピュータ)の持つIPアドレスです。

探索するMACアドレス: 00:00:00_00:00:00 (00:00:00:00:00:00)

探索するMACアドレスはまだわからないので、'0'で埋められています。

探索するIPアドレス : 192.168.0.1 (192.168.0.1)

このIPアドレスを持つホスト(私のルーター)のMACアドレスを要求します。

以上がARP要求パケットです。実際のパケットがフォーマット通りになっているのが観察できました。次回はARP応答パケットを見てみます。

Wiresharkで見る-ARPのパケット

この記事には後編があります。

  1. Wiresharkで見る-ARPのパケット(1/2) ARP要求パケット
  2. Wiresharkで見る-ARPのパケット(2/2) ARP応答パケット

関連する記事

参考にした本

実践 パケット解析 ―Wiresharkを使ったトラブルシューティング
4873113512Chris Sanders 園田 道夫 一瀬 小夜

オライリー・ジャパン 2008-01-25
売り上げランキング : 5124


Amazonで詳しく見る
by G-Tools
マスタリングTCP/IP 入門編 第4版
マスタリングTCP/IP 入門編 第4版竹下 隆史 村山 公保 荒井 透

オーム社 2007-02-24
売り上げランキング : 1689
おすすめ平均star


Amazonで詳しく見る
by G-Tools

*1:マスタリングTCP/IP 入門編 第4版を参考にしました。

*2:Hardware Length(MACアドレスの長さ)

*3:Protocol Length(IPアドレスの長さ)


スポンサード リンク

テーマ:インターネット - ジャンル:コンピュータ - ソーシャルブックマーク: この記事をクリップ! Yahoo!ブックマークに登録

15 : 05 : 03 | Wireshark-パケット解析 | トラックバック(0) | コメント(0) | page top↑
<<Wiresharkで見る-ARPのパケット(2/2) ARP応答パケット | ホーム | Wiresharkで見る-Webページが表示されるまでのパケットの流れ>>
コメント

コメントの投稿














管理者にだけ表示を許可する

トラックバック
トラックバックURL
http://networkprogramming.blog18.fc2.com/tb.php/15-87ba8d0c
この記事にトラックバックする(FC2ブログユーザー)
| ホーム |

プロフィール

TBVector

Author:TBVector

プロフィール

メールフォーム

記事検索

Google

最近の記事

人気の記事

過去の記事

カテゴリー

タグランキング

リンク

最近のコメント

最近のトラックバック

アクセスカウンタ

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。