21.8. DHCP

原作: Gregory Sutter , 2000 年 3 月.

21.8.1. DHCPとは何でしょう?

DHCP (Dynamic Host Configuration Protocol) は、 システムをネットワー クに接続するだけで、 ネットワークでの通信に必要な情報を入手するこ とができる仕組みです。 FreeBSD では、 ISC (Internet Software Consortium) による DHCP の実装を使用しています。 したがって、 ここで の説明のうち、 実装によって異なる部分は ISC のもの用になっています。

21.8.2. この節で説明していること

ハンドブックのこの節では DHCP システムの、 FreeBSD に組み込まれてい る部分についてだけ説明しています。 ですから、 サーバについては説明 していません。 後の節で紹介するリファレンスに加えて、 DHCP のマニュアルページも有力な参考になることでしょう。

21.8.3. DHCP の動作

クライアントとなるマシン上で DHCP のクライアントである dhclient を実 行すると、 まず設定情報の要求をブロードキャストします。 デフォルト では、 このリクエストには UDP のポート 68 を使用します。 サーバは UDP の ポート 67 で応答し、 クライアントの IP アドレスと、 ネットマスクやルー タ、 DNS サーバなどの関連する情報を提供します。 これらの情報の すべては DHCP の「リース」の形で送られ、 DHCP サーバ管理者によって決 められたある一定の時間内でのみ有効になります。 これによって、 ネッ トワークに存在しなくなったホストの IP アドレスは自動的に回収される ことになります。

DHCP クライアントはサーバから非常に多くの情報を取得することができます。 dhcp-options(5) に、 その非常に大きなリストが載っています。

21.8.4. FreeBSD への組み込み

FreeBSD は ISC の DHCP クライアントである dhclient を完全に組み込んでいます。 DHCP クラ イアントはインストーラと基本システムの両方で提供されています。 ですから DHCP サーバを走らせているネットワーク上ではネットワー ク関係の設定についての詳細な知識は必要になりません。 dhclient は、 3.2 以降の FreeBSD のすべての配布 に含まれています。

DHCP は sysinstall でサポートされてお り、 sysinstall でのネットワークインタフェイス設定の際は、 「こ のインタフェイスの設定として DHCP を試してみますか?」という質問 が最初になされます。 これに同意することで dhclient が実行さ れ、 それが成功すればネットワークの設定情報は自動的に取得されま す。

システム起動時に、 DHCP を使ってネットワーク情報を取得するように するには、 次の 2 つのステップを行なう必要があります。

DHCP サーバである dhcpd は、 ports collectionに isc-dhcp2 として収録されていま す。 この port はクライアント、 サーバ、 リレーエージェントから成 る ISC の DHCP 配布物をすべて含んでいます。

21.8.5. 関連ファイル

21.8.6. 参考になる文献

DHCP のプロトコルは RFC 2131 に完全に記述されています。 また、 dhcp.org にも有用な 情報源が用意されています。