通常の dhcp パッケージはふたつあります。 ISC によるものと CMU によるものです。 NetBSD には ISC の実装が附属しています。 これは活発にサポートされており、多くの種類の OS で動作しているからです。 多くの OS には、このサーバーがインストール済で附属してきます。
/etc/dhcpd.conf ファイルは、各プラットフォームで共通の 標準的な書式を持ちます。この書式はかなり融通がききます。 ここでは、アドレスが固定 (あらかじめ決め打ち) されたクライアント にサービスするだけの単純なものを示します。 ISC dhcpd の設定の より詳しい理解のためには、マニュアルページをお読みください: dhcpd(8)、 dhcpd.conf(5)、 dhcpd-options(5)。 また、 NetBSD DHCP HOW-TO を読むのもよいかもしれません。 ISC DHCP の公式 web サイトを見て回ってもよいでしょう。
次の段階のブートロードに tftp を使う場合の next-server ディレクティブの使用には注意してください。クライアントは、この next-server が tftp および nfs の両方を 扱うことを仮定しています。
dhcpd.conf の見本にはコメントが 含まれています。これを /etc ディレクトリーに保存して、 あなたのサイト用にアドレスを編集するのがよいでしょう。 ほとんどのクライアントにとっては、このファイル中のオプションが すべて必要なわけではありませんが、そのまま残しておいて、 問題がある場合には削除するというのが一番よいでしょう。
NetBSD での dhcpd の設定
ISC DHCPD での dhcpd の設定 (NetBSD、 OpenBSD、
FreeBSD、 Mac OS X、 Darwin、 Linux、 SunOS、 Solaris、 NEXTSTEP、 HP-UX、 BSD/OS、
OSF/1、 Ultrix)
CMU DHCPD での dhcpd の設定 (古いバージョンの
SunOS、 Solaris、 HP-UX、 IRIX、 AIX)
Solaris での dhcpd の設定
[もし、これら以外のプラットフォームについて詳しくご存知なら、 ぜひお知らせください]
もしあなたの OS がここに挙がっていなければ、 下記のパッケージのいずれかをソースからコンパイルしてみてください:
pseudo-device bpfilter 4NetBSD の配布に含まれる GENERIC カーネルは、これを含んでいます。
これで dhcpd がデバッグモードで動きます。 dhcpd がリクエストを受け取ると、 下記のようなメッセージが表示されます:
BOOTREQUEST from CC:CC:CC:CC:CC:CC via le0 (non-rfc1048) BOOTREPLY for 192.168.1.10 to client.test.net (CC:CC:CC:CC:CC:CC) via le0 DHCPDISCOVER from CC:CC:CC:CC:CC:CC via le0 DHCPOFFER on 192.168.1.10 to CC:CC:CC:CC:CC:CC via le0 DHCPREQUEST for 192.168.1.10 from CC:CC:CC:CC:CC:CC via le0 DHCPACK on 192.168.1.10 to CC:CC:CC:CC:CC:CC via le0ブートローダーは何も反応を返さないのが普通です。しかし、カーネルが ルートファイルシステムを探すときには、以下のメッセージを出力します:
boot device: <unknown> nfs_boot: trying DHCP/BOOTP nfs_boot: DHCP server: 0xC0A80105 nfs_boot: my_name=client nfs_boot: my_domain=test.net nfs_boot: my_addr=0xC0A8010A nfs_boot: my_mask=0xffffff00 nfs_boot: gateway=0xC0A80101 root on :/export/client/root
いくつかのプラットフォームでは、(NetBSD、 OpenBSD、 FreeBSD、 Linux と同様に) ISC DHCPD がインストール済です。 システムにインストール済みかどうか確かめ、インストール済みの場合は、 一から新しいバージョンのものをコンパイルするのではなく、 附属しているバージョンを使うべきです。設定の手順は事実上同じであり、 設定ファイルも同じです。
これで dhcpd がデバッグモードで動きます。 dhcpd がリクエストを受け取ると、 下記のようなメッセージが表示されます:
BOOTREQUEST from CC:CC:CC:CC:CC:CC via le0 (non-rfc1048) BOOTREPLY for 192.168.1.10 to client.test.net (CC:CC:CC:CC:CC:CC) via le0 DHCPDISCOVER from CC:CC:CC:CC:CC:CC via le0 DHCPOFFER on 192.168.1.10 to CC:CC:CC:CC:CC:CC via le0 DHCPREQUEST for 192.168.1.10 from CC:CC:CC:CC:CC:CC via le0 DHCPACK on 192.168.1.10 to CC:CC:CC:CC:CC:CC via le0ブートローダーは何も反応を返さないのが普通です。しかし、カーネルが ルートファイルシステムを探すときに、以下のメッセージを出力します:
boot device: <unknown> nfs_boot: trying DHCP/BOOTP nfs_boot: DHCP server: 0xC0A80105 nfs_boot: my_name=client nfs_boot: my_domain=test.net nfs_boot: my_addr=0xC0A8010A nfs_boot: my_mask=0xffffff00 nfs_boot: gateway=0xC0A80101 root on :/export/client/root
ブートローダーは何も反応を返さないのが普通です。しかし、カーネルが ルートファイルシステムを探すときに、以下のメッセージを出力します:
boot device: <unknown> nfs_boot: trying DHCP/BOOTP nfs_boot: DHCP server: 0xC0A80105 nfs_boot: my_name=client nfs_boot: my_domain=test.net nfs_boot: my_addr=0xC0A8010A nfs_boot: my_mask=0xffffff00 nfs_boot: gateway=0xC0A80101 root on :/export/client/root
|
|