ネットワークスペシャリスト - SE娘の剣 -

ネットワークスペシャリストの試験対策サイトです。
ネスペ試験の合格体験談、合格のコツ、過去問解説、基礎知識などの情報を掲載します。

カテゴリ:10.アプリケーション層(L5〜L7) > 10.2 DHCP

・DHCP(Dynamic Host Configuration Protocol)とは、言葉の通り、動的にホスト(Host)やPCのネットワークの設定(Configration)をするプロトコル(Protocol)です。
・過去問ではDHCP(Dynamic Host Configuration Protocol)に関して、「DHCPは、IPアドレスなどのネットワーク接続に必要な情報、IPアドレスの有効時間を示すリース期間及びサブネットマスクなどのオプション情報をDHCPサーバから自動的に取得し、PCに設定するためのプロトコル(H21春AP午後-問5)」と述べている。
dhcpとは 

・パソコンの設定は、ネットワークの設定は、図のように「IPアドレスを自動的に取得する」にします。
dhcp_ネットワークスペシャリスト 

・UDP67番がサーバでUDP68番がクライアントで使うポート
・DHCPの前身になるのがBOOTP(BooTstrap Protocol)。DHCPはBOOTPを大幅に拡張しており、扱えるオプションなどがかなり増えている。
ネットワークスペシャリストを目指す女性SEあれ? 

複数のDHCPサーバがあるとき、クライアントはどのサーバからアドレスを取得するのですか?
一般的には,最も早く応答したDHCPサーバからIPアドレスを取得する。ネットワーク的な距離が近いものから取得することになるが、そのときのタイミングにより、結果は変わると想定される。
ef6167f8.jpg 

ということは、DHCPサーバを冗長化したときに、マスターとなるDHCPサーバから払いだしたのか、バックアップ側のDHCPサーバから払い出したのかが分からないということですね。
そう。これでは、払い出しログを確認するときなど、管理する人にとっては面倒である。
そこで、バックアップ側のDHCPサーバでは、払い出しのタイミングをずらすという遅延設定を入れることがある。

女性目閉じる■DHCPを利用するメリット
・全端末に設定をする必要がない。(特に変更時が便利。1000人の設定を変えるのは大変である。新しいパソコンに入れ方たときもそうだし、パソコンをフロアを移動して使う場合なども)
⇒過去問では、「IPアドレスなどを手作業で設定する煩雑さをなくす。(H21春AP午後-問5)」と述べている。
・IPアドレスの一元管理が行える(DHCPサーバのログより)
・IPアドレスの有効利用(企業ではプライベートアドレスを使うので、あまりメリットではないかも)
⇒過去問では、「リース期間を設定することによって、一定期間ごとのIPアドレスの再利用を行うので、DHCPサーバに登録するIPアドレス数の削減ができる。(H21春AP午後-問5)」と述べている。

■DHCPを利用せずに、固定IPアドレスを利用するメリット
・DHCPサーバがダウンしてもネットワークを利用できる。
(DHCPサーバのコストは結構かかる。全セグメントに1台ずつ置くのは大変なので、リレーエージェントの設定をするが、そうするとネットワークがダウンしたら使えない)
・IPアドレスと端末(ユーザ)の特定がしやすい。
・(DHCPのデメリットになるが、)持ち込みPCをつないだとしても、自動でネットワークに接続できてしまうため、セキュリティが弱くなる。とはいえ、固定でも自分で設定すれば同じなわけであるが、セキュリティの弱さという意味では、DHCPのほうが弱い。(気持ちの問題かもしれないが)

■DHCPか固定か
・サーバなど、固定IPにしないと、通信が影響がでやすいものは固定にする。
・セキュリティ上の懸念がない環境であれば、運用面を考えてDHCPとする。

◆サーバ側の設定
・サブネット/ネットマスク
・払いだすIPアドレスの範囲
・ドメインサフィックス
・デフォルトゲートウェイ
・DNSやWins
・リース時間
・払い出し除外のIP
・固定でのIP払い出し(MACアドレスと対応)

過去問(H21春AP午後-問5)にてDHCPメッセージのやり取り手順が述べられている。
DHCPtejun
1)DHCP DISCOVER クライアントがサーバを探す(Discover)。ブロードキャスト。

2)DHCP OFFER DHCPサーバからDHCPクライアントに対し、このIPでどうか?と提案(Offer)を出す。ユニキャスト。Offerの中にはIPアドレスだけでなく、サブネットマスクやDNSなどのオプション情報も含まれる。

3)DHCP REQUEST クライアントからの了解を送る。ブロードキャスト。

4)DHCP ACK ユニキャスト
※2)と4)はMircosoft社のDHCPサーバとISCのDHCPサーバによってユニキャストでは無い場合がある。
dhcpの流れ、offerからACKまでの手順

女性目閉じる

上記の1)DHCP DISCOVERでは、DHCPサーバが分からないのでブロードキャストする必要があります。
しかし、なぜ3)DHCP REQUESTもブロードキャストする必要があるのですか?
DHCPサーバが複数存在する場合があります。その場合、IPアドレスを決定したことをセグメント上に伝える意味があります。そうしないと、他のDHCPサーバは、何度もクライアントにIPを払い出そうとしてしまう。
女性直立

話は変わりますが、
DHCPサーバが複数台あっても問題ないのですか?
基本的には上記のDHCP REQUESTでブロードキャストを利用していることにより問題は発生しない。クライアントはどのDHCPサーバを選択するかというと、フレームが速く到着したものを採用する。
ただ、各DHCPサーバソフトを提供している会社は推奨していない。障害が発生する可能性があるからだ。Linuxではそのための冗長化(フェールオーバ)の機能を提供している。

◆おまけ
DHCPでIPアドレスを取得できなかった場合、Mircosoft社の製品ではAPIPA(Automatic Privete IP Addres)による自動プライベートIPアドレス(169.254.X.X)が割り振られる。ただ、このIPアドレスでは他のPCと通信はできない。

女性直立◆DHCP リレーエージェントとは
・DHCPの代理中継のこと。
・過去問では、「ルータは、DHCPクライアントからネットワーク接続に必要な情報などの取得要求を受け取ると、DHCPリレーエージェント機能によって、DHCPサーバにその要求を転送する。また、DHCPサーバからの応答をDHCPクライアントに転送する。(H21春AP午後-問5)」と述べている。
・Ciscoでは、以下の設定を行うことで、DHCPリレーエージェントを有効にするとともに、DHCPサーバを指定している。
#ip helper-address 192.168.1.100

◆仕組み
PC→→ルータ(代理中継)→WAN→DHCPサーバ
・ルータまではブロードキャスト 
・ルータからDHCPサーバまではIPパケット

◆なぜDHCPリレーエージェントが必要なのか
・DHCPのパケットはブロードキャストで送られるため、WANを超えられない。DHCPサーバをブロードキャスト範囲内に設置できればいいが、コスト的そうはいかない。DHCPサーバだらけになってしまう。
また、DHCPサーバを冗長化するのはコスト的に大変なので、リレーエージェントを使うことで、DHCPのスタンバイ機の設定ができる。

◆DHCPサーバは、どうやって払いだすIPを決めるのか。
DHCPサーバは、複数のセグメントからIPの要求が来る。
払いだすIPをどうやってきめるのだろうか?

DHCPリレーエージェントには、中継元のルータのIPアドレス(LAN側)が入っており、そのIPアドレスと同一セグメントのIPアドレスを払いだします。

DHCPは早い者勝ちで払いだす。優先的に使わせたいDHCPサーバがある場合には、遅延設定をすることで該当するサーバへの問い合わせが早い者勝ちに負ける設定をする。

・DHCPリレーエージェントの仕組みを理解する過去問があるので、紹介する。
【H18NW午前 問44】
DHCPを用いるネットワーク構成で、リレーエージェントが必要になるのは、ネットワークにどの機器が用いられている場合か。

ア スイッチングハブ   イ ブリッジ
ウ リピータ        エ ルータ

 正解: エ

DHCP Discoverの場合のフレーム構造
ちょっと汚いので、時間があれば直します。
dhcp

フィールドの詳細
RFC http://tools.ietf.org/html/rfc2131 をもとに作成
Field長さ
(バイト)
意味解説
op 1メッセージタイプクライアントからのRequestは1、サーバからのReplyは2
htype 1ハードウェアタイプ通常のイーサネットは1
hlen 1ハードウェア長 通常のイーサネットは6
hops 1hops通常は0
xid  4Transaction ID一連の通信で共通で利用されるID
secs 2 0または、経過した秒数
flags 2フラグ回答をブロードキャストで要求する場合は、一番左のビットに1をたてる
ciaddr   4クライアントのIPアドレス すでにIPアドレスを持っていて、Renewなどにより再取得するときなどに限定してセットされる。
yiaddr   4your IP address 払い出すIPアドレスがセットされる 
siaddr  4 起動処理に使うための次のサーバ。DHCPサーバのIPアドレスがセットされるわけではない。
giaddr   4リレーエージェントのIPアドレス 
chaddr16Client Hardware addresClientのMACアドレス
sname64サーバのホスト名 
file128  
optionsvariableオプションDHCPのリースタイム、サブネットマスク、デフォルトGW、DNS情報など

では、実際のDHCPのパケットを見てみましょう。
DHCP DISCOVER
クライアントがサーバを探す(Discover)。宛先MACアドレスがFFFFFFFFFFFなので、ブロードキャストである。ブロードキャストパケットはルータでは破棄されるため、ルータを超えられない。なので、同一セグメント内でのみDHCPが利用できる。
dhcp_discover

DHCP OFFER 
DHCPサーバからのユニキャスト。デフォルトGWなどの情報も合わせて提案される。
以下のキャプチャの上部には192.168.1.2が提案され、下の方でオプションのサブネットマスクやRouter(デフォルトGW)などが提案されている。
dhcp_offer2


DHCP REQUEST 
クライアントからの了解を送る。ブロードキャスト。
4
ブロードキャストで送るのは、この通信によってIPアドレスを取得したことを周りのメンバーに伝えるためですよね?
ということは、パケットの中に、取得したIPアドレス情報が入っていますね。
そう思っていたのですが、実際には入っていません。どうやら、transaction idだけで把握しているのでしょう。一連の流れは共通のtransaction idを用いられる。このidだけが埋め込まれており、どのIPアドレスを使うかは直接記載されていないようだ。(要確認)

DHCP ACK ユニキャスト
dhcp_ack

ネットワークスペシャリスト試験の過去問(H25年秋NW午後橘2)では、以下の記述がある。
L2SW及びSWがもつDHCPスヌーピング機能を使用する。この機能によって,L2SW及びSWは,正規のDHCPサーバと端末間で通信されるDHCPメッセージを,通過するポートの場所を含めて監視する。さらに,正規のDHCPサーバからIPアドレスを割り当てられた端末だけが通信できるように,ポートのフィルタを自動制御する。

スヌーピングとは,「のぞき見する」という意味です。つまり、DHCPのパケットをのぞき見し、不正な通信をブロックします。具体的に、今回のDHCPスヌーピングの機能は以下です。

正規のDHCPサーバを接続するポートを指定する機能
指定したポート以外にDHCPサーバを接続しても、DHCPの払い出しをさせません。もし、指定したポート以外からDHCP OFFERやDHCP ACKが届いたとしても、そのフレームをSWが破棄します。

正規のDHCPサーバからIPアドレスを割り当てたPCだけを通信させる機能
DHCPのパケットをスヌーピングし、正規のDHCPからIPアドレスを払い出されたPCだけを通過させます。PCの特定はMACアドレスで行います。さらには,利用者が勝手に固定IPアドレスを割当てたPCの通信も拒否します。
DHCPスヌーピングの機能

CatalystでのDHCPスヌーピングの設定を紹介します。
SW(config)# ip dhcp snooping   ←DHCPスヌーピングを有効化
SW(config)# ip dhcp snooping vlan 10 ←DHCPスヌーピングを有効にするVLANを指定
SW(config)# interface fastethernet0/24 ←上記,寮瀋
SW(config-if)# ip dhcp snooping trust  ←  〃
SW(config)# interface fastethernet0/1       ←上記△寮瀋
SW(config-if)# ip verify source port-security   ←    〃
少し補足します。,寮瀋蠅蓮DHCPサーバを接続する24番ポートをtrust(信頼された)として設定します。この設定をしないポートはuntrust(信用されない)という設定になり、DHCPサーバを接続してもDHCPのフレームが破棄されます。
△寮瀋蠅蓮DHCPスヌーピングにIP Source Guardを付加しています。1番ポートでは、正規の端末以外からの通信を拒否します。「verify」とは「正しいかどうかを確かめる」という意味です。

このページのトップヘ