Ciscoルータで学ぶネットワーク > DHCPの仕組み詳細C
当サイト概要CCNA・CCENT・資格書籍学習環境の準備リンクについてリンクの申込お問い合せプライバシーポリシー
◆DHCPの仕組み詳細C

BOOTPのメッセージフォーマット


 ここでは、DHCPのメッセージフォーマットを説明して行きます。DHCPは、BOOTP(Bootstrap)の上位互換であるため、メッセージの構造は、ほとんど変わっていません。

まず、BOOTPのメッセージフォーマットを説明します。

 BOOTP、DHCPのメッセージは、ほとんど同じ形式の構造を使用しています。最終フィールドのみ異なります。BOOTPの場合、この省略可能なフィールドを「ベンダ固有領域」と呼び64バイトに制限しています。

DHCPの場合、この領域は、可変長で「オプション」と呼び、DHCPオプション情報を伝達できるようにしています。

下の図は、BOOTPのメッセージフォーマットです。

0 15 16 31
OP
(8ビット)
ハードタイプ
(8ビット)
ハードウェア長
(8ビット)
ホップ数
(8ビット)
トランザクションID
(32ビット)
経過秒数
(16ビット)
フラグ
(16ビット)
CIADDR(クライアントのIPアドレス)
(32ビット)
SIADDR(サーバのIPアドレス)
(32ビット)
GIADDR(クライアントのIPアドレス)
(32ビット)
CHADDR(クライアントのMACアドレス)
(16バイト)
SNAME(サーバ名)
(64バイト)
ファイル名
(128バイト)
ベンダ固有領域
(64バイト)
←―― 32ビット ――→


DHCPのメッセージフォーマット


DHCPはBOOTPの拡張で、メッセージフォーマット等は、ほぼそのままです。

下の図は、DHCPのメッセージフォーマットです。

0 15 16 31
OP
(8ビット)
ハードタイプ
(8ビット)
ハードウェア長
(8ビット)
ホップ数
(8ビット)
トランザクションID
(32ビット)
経過秒数
(16ビット)
フラグ
(16ビット)
CIADDR(クライアントのIPアドレス)
(32ビット)
SIADDR(サーバのIPアドレス)
(32ビット)
GIADDR(クライアントのIPアドレス)
(32ビット)
CHADDR(クライアントのMACアドレス)
(16バイト)
SNAME(サーバ名)
(64バイト)
ファイル名
(128バイト)
オプション
(可変長)
←―― 32ビット ――→


DHCPのメッセージフォーマット


DHCPメッセージのフォーマットは、下図の通りです。


DHCPメッセージの各フィールドの内容は、下記の通りです。

●DHCPのメッセージの主要項目
フィールド Name
説明
op
(1バイト)
OpCode パケットが要求と応答のいずれであるかを識別する。
htype
(1バイト)
ハードウェアタイプ ハードウェアアドレスのタイプを指定します。
hlen
(1バイト)
ハードウェア長 ハードウェアアドレス長を指定する。
hops
(バイト)
ホップ クライアントが0を設定し、要求がルータを経由する度に値がインクリメントされる。
xid
(4バイト)
トランザクションID クライアントによって選択されたランダムな数字。DHCPメッセージは全て同じxidが設定される。
secs
(2バイト)
DHCPプロセスが開始されてからの経過した秒数が設定される。
flags
(2バイト)
フラグ メッセージが、ブロードキャストなのかユニキャストなのかを指定する。
ciaddr
(4バイト)
クライアント
IPアドレス
Bound,Renew,Rebinding状態のように、クライアントが自身のIPアドレスを知っている時のみ使用される。
yiaddr
(4バイト)
相手先
IPアドレス
クライアントIPアドレスが、0.0.0.0の場合、DHCPサーバはオファーされたクライアントIPアドレスをこのフィールドに設定する。
siaddr
(4バイト)
サーバ
IPアドレス
クライアントがDHCPサーバのIPアドレスを知っている場合は、このフィールドにDHCPサーバのIPアドレスを設定する。それ以外では、DHCPサーバからのDHCPOFFER、DHCPACKで使用される。
giaddr
(4バイト)
ルータ
IPアドレス
ゲートウェイIPアドレス、DHCP/BOOTPリレーエージェントによって設定される。
chaddr
(16バイト)
クライアント
MACアドレス
DHCPクライアントのMACアドレス。
sname
(64バイト)
サーバ名 オプションのサーバホスト名。
file
(バイト)
ブートファイル名 ブートファイル名。
options
(可変長)
オプション パラメータ DHCPサーバが提供するオプションのパラメータ。

 DHCPにおいては、snameやfileなどの巨大なフィールドは、あまり意味を持ちません。このフィールドは、BOOTPの拡張という立場を守るために用意されています。

DHCPの仕組み詳細C  @ABCDE

◆Menu
◆スポンサードリンク
◆Amazon

Copyright(c)2014〜 Ciscoルータで学ぶネットワーク All rights reserved.