BOOTP サーバの設定
GNU/Linux で使える BOOTP サーバは 2 つあります。
ひとつは CMU の bootpd です。
もう 1 つは実際は DHCP サーバですが、ISC の dhcpd です。
&debian; では、
bootp パッケージと dhcp
パッケージにそれぞれ入っています。
CMU bootpd を使う場合は、まず /etc/inetd.conf ファイルの
該当行をアンコメント (または追加) する必要があります。
&debian; では update-inetd --enable bootps を実行し、
続いて /etc/init.d/inetd reload とすれば OK です。
BOOTP サーバが Debian で動かない場合は、以下のようにします。
bootps dgram udp wait root /usr/sbin/bootpd bootpd -i -t 120
ここで次に /etc/bootptab を作成します。
このファイルの書式は、
printcap, termcap,
disktab ファイルなどでお馴染みの、
例のわかりにくい形式になっています。
詳細は bootptab マニュアルページを見てください。
CMU bootpd では、
クライアントのハードウェア (MAC) アドレスを知っておかなければなりません。
/etc/bootptab の例を示します。
client:\
hd=/tftpboot:\
bf=tftpboot.img:\
ip=192.168.1.90:\
sm=255.255.255.0:\
sa=192.168.1.1:\
ha=0123456789AB:
少なくともクライアントのハードウェアアドレスを指定している
ha
オプションは変更する必要があるでしょう。
bf
オプションはクライアントが TFTP で取得するファイルを指定しています。
詳細は を参照してください。
SGI のマシンでは、
コマンドモニタから printenv と入力してください。
eaddr 変数がマシンの MAC アドレスです。
対照的に、ISC dhcpd を使っての BOOTP の設定は実に簡単です。
dhcpd では、BOOTP クライアントは
やや特殊な DHCP クライアントとして取り扱われます。
アーキテクチャによっては、BOOTP によるクライアントの起動には
複雑な設定が必要になります。
これに該当してしまったら、 の節を読んでください。
該当しないアーキテクチャでは、
クライアントの含まれるサブネットの設定ブロックに
allow bootp というディレクティブを追加し、
/etc/init.d/dhcpd restart で
dhcpd を再起動するだけです。