特に指示がない場合は、つねにインストールして下さい。
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 >