特に指示がない場合は、つねにインストールして下さい。
Important: チェックポイント
□ ターゲット /usr/pkgsrc/net/isc-dhcpd4 □ /etc/rc.conf isc_dhcpd=yes dhcpd=no □ 設定ファイル /usr/pkg/etc/dhcp/dhcpd.conf □ ポート番号 67/udp □ 動作の確認 psとってdhcpdが動いている。67/udp が開いている。 設定した内容と、実際にDHCPを配っているネットワークが 本当にあっているか?
注意: # や % の意味が分からない人は 用語 を参照してください。
% su root # cd /usr/pkgsrc/net/isc-dhcpd4 # make install
| Caution |
2011/04 以降: make packege ではなく make install を使ってください。 事情の詳細は the Section called 2011 春: make install および make package の動作が変わる 節を参照してください。 |
/etc/rc.d も入れ換えて
% su root # cp -p /usr/pkg/share/examples/rc.d/isc_dhcpd /etc/rc.d
/etc/rc.conf に isc_dhcpd=yes を書いてください。 また、OS 本体に入っている dhcpd (同じく ISC-DHCPD)が動かないよう、 念のため dhcpd=no と書いておきます。
[/etc/rc.conf] isc_dhcpd=yes dhcpd=no
複数のネットワークインターフェイスがある PC (たとえば nfgw)では、 オプションでインターフェイスも指定してください。 たとえば fxp3 インターフェイスが担当するネットワークに DHCP をくばる場合、 次のようにします。
[/etc/rc.conf] isc_dhcpd=yes isc_dhcpd_flags="fxp3" dhcpd=no
あとは /usr/pkg/etc/dhcp/dhcpd.conf を編集し、
# /etc/rc.d/isc_dhcpd startしてください。
こんなかんじ。 オプション名は見て分かるとおり
[/usr/pkg/etc/dhcp/dhcpd.conf]
default-lease-time 600;
max-lease-time 7200;
authoritative;
subnet 192.168.10.0 netmask 255.255.255.0 {
range 192.168.10.100 192.168.10.199;
option routers 192.168.10.1;
option domain-name-servers 192.168.10.2;
option domain-name "example.org";
option broadcast-address 192.168.10.255;
option subnet-mask 255.255.255.0;
}
注: オプション名を見て意味が想像できない人は、
ネットワークの設定を一からやりなおしからTRYしましょう。
そんなあなたが設定したら危ないです。psとって dhcpd が動いていること。67/udp が開いていること。 これらが確認できたら、 実際に何か PC をつないで DHCP がもらえることを確認してください。
PC の MAC アドレス「 00:1d:69:74:89:00 」に対しては同じ設定を与えます。 次の設定を /usr/pkg/etc/dhcp/dhcpd.conf に追加してください (もちろん IP アドレス等は適当に書き換えてください)。
host mynotepc {
hardware ethernet 00:1d:69:74:89:00;
fixed-address mynotepc.example.org;
option routers 192.168.10.1;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.10.255;
option domain-name-servers 192.168.10.1;
option domain-name "example.org";
option host-name "mynotepc.example.org";
}「hardware ethernet 00:1d:69:74:89:00;」と指定するところがポイントで、 それ以外は普通のクライアントの場合とほぼ同じです。 この例では「fixed-address mynotepc.example.org; 」としてあり、 与える IP アドレスを DNS で取得しています。 ついでに「option host-name "mynotepc.example.org";」でホスト名も与えています (相手がそれを採用してくれるかどうかはわかりませんが)。
なお、fixed-address の引数は IP アドレスでもかまいません。
[/usr/pkg/etc/dhcp/dhcpd.conf]
host mynotepc {
hardware ethernet 00:1d:69:74:89:00;
fixed-address 192.168.10.200;
option routers 192.168.10.1;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.10.255;
option domain-name-servers 192.168.10.1;
option domain-name "example.org";
}NetBSD を PXE ブートさせるための設定です。
注意: 設定は三点セット(DHCP, TFTP and NFS)なので、 DHCP 以外に tftpd と NFS サーバの設定も必要です。
(1) 特定の MAC アドレスの PC に対してのみ PXEブートを許す。
host nbdiskless {
hardware ethernet 00:9c:d4:2b:69:e1;
fixed-address nbdiskless.example.org;
option routers 192.168.10.1;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.10.255;
option domain-name-servers 192.168.10.2;
option domain-name "example.org";
option host-name "nbdiskless.example.org";
# PXE boot stage1
filename "pxeboot_ia32.bin";
# PXE boot stage2 (XXX here we assume NFS server = 192.168.10.10)
next-server 192.168.10.10;
option root-path "/var/diskless/client/root";
}(2) だれにでも PXEブートを許すには、単に普通の例(最初の例)に PXE ブートの設定を。 ただし、単純に全クライアントで PXEブートをやってしまうと問題があります (演習問題: なぜか?)ので、まぁ試験目的程度とおもってください。
[/usr/pkg/etc/dhcp/dhcpd.conf]
default-lease-time 600;
max-lease-time 7200;
authoritative;
subnet 192.168.10.0 netmask 255.255.255.0 {
range 192.168.10.100 192.168.10.199;
option routers 192.168.10.1;
option domain-name-servers 192.168.10.2;
option domain-name "example.org";
option broadcast-address 192.168.10.255;
option subnet-mask 255.255.255.0;
# PXE boot stage1
filename "pxeboot_ia32.bin";
# PXE boot stage2 (XXX here we assume NFS server = 192.168.10.10)
next-server 192.168.10.10;
option root-path "/var/diskless/client/root";
}Q: 複数の PC で PXE ブートをすると何が問題になるのか?
Q: PXE のかわりに gPXE を使うためには、どう変更すればよいか?
Q: PXE のかわりに iPXE を使うためには、どう変更すればよいか?
Copyright (C) 1993-2025 Ken'ichi Fukamachi mail:< fukachan at fml.org >