BOOTPD

Section: Maintenance Commands (8)
索引 jman

BSD mandoc
 

索引

名称

bootpd , bootpgw - インターネットブートプロトコルサーバ/ゲートウェイ  

索引

書式

[-i | s ] [-c chdir-path ] [-d level ] [-h hostname ] [-t timeout ] [bootptab [dumpfile ] ] bootpgw [-i | s ] [-d level ] [-h hostname ] [-t timeout ] server  

索引

解説

ユーティリティは RFC951, RFC1532, RFC1533 で定義された インターネットブートプロトコル (BOOTP) サーバを実装したものです。 bootpgw ユーティリティは、要求と応答を、あるサブネット上のクライアントと、 別のサブネット上の BOOTP サーバ (すなわち ) との間で転送するのに使われる、単純な BOOTP ゲートウェイを実装しています。 または bootpgw は BOOTREPLY パケットを転送しますが、 bootpgw だけが BOOTREQUEST パケットを転送します。

各々のネットワークセグメントにつき、通常一つのホストで、 以下の行のどれかをファイル /etc/inetd.conf に含めることにより、 あるいは bootpgwinetd(8) から起動されるように設定されます:

bootps dgram udp wait root /usr/libexec/bootpd bootpd /etc/bootptab
bootps dgram udp wait root /usr/libexec/bootpgw bootpgw server

この動作モードは「inetd モード」と呼ばれ、 ブート要求が到着した時にだけ (あるいは bootpgw を開始します。 もし最後にパケットを受信してから 15 分以内に別のパケットを受信しないのなら、 システムの資源を浪費しないように終了します。 -t オプションがこのタイムアウト時間を制御します (オプション参照)。

他の通常のコマンドのように単にシェルから起動することで、 (あるいは bootpgw ) を「スタンドアローンモード」( inetd(8) なし) で実行することも可能です。 が大きなコンフィギュレーションデータベースのもとで使われる時には、 inetd モードでの起動時の遅延が クライアントの要求に対する素早い応答を妨げるので、 スタンドアローンモードは特に役に立ちます。 (例えば /etc/rc.local から を呼びだすことによって、 スタンドアローンモードで自動的に起動することができます。) bootpgw は設定ファイルを読まないので、 起動時の遅延はかなり小さく、 スタンドアローンモードはあまり役に立ちません。

どちらのプログラムも、inetd から呼び出されたかシェルから呼び出されたかを 自動的に検出し、自動的に適当なモードを選択します。 -s と -i オプションは各々、スタンドアローンモードと inetd モードを強制するのに 使います (オプション参照)  

索引

オプション

以下のオプションを使用可能です:

-t timeout
あるいは bootpgw プロセスが終了する前に BOOTP パケットを待つ timeout 値 (分単位) を指定します。 もし timeout 分内にパケットを受信しなければ、プログラムは終了します。 timeout の値が 0 の場合は「永遠に実行する」という意味です。 スタンドアローンモードでは、このオプションは 0 に強制されます。
-d debug-level
生成されるデバッグメッセージの量を制御する変数 debug-level を設定します。 例えば、 -d 4 や -d 4 では、デバッグレベルが 4 に設定されます。 古いバージョンの との互換性のため、数字のパラメータを省略 (つまり、 -d だけ) すると 単にデバッグレベルを一つだけ増加させます。
-c chdir-path
クライアントのブートファイルの存在とサイズを検査する間に で使われるカレントディレクトリを設定します。 クライアントのブートファイルが相対パス名で指定されていて、 が TFTP サーバと同じカレントディレクトリ (典型的には /tftpboot を必要とするときに有用です。 このオプションは bootpgw によっては認識されません。
-h hostname
接続を待っている IP アドレスに対応するホスト名を指定します。 デフォルトでは gethostname(3) が返すマシンのホスト名に対応する IP アドレスで待ちます。
-i
強制的に inetd モードにします。 このオプションは時代遅れですが、古いバージョンの との互換性のために残してあります。
-s
強制的にスタンドアローンモードにします。 このオプションは時代遅れですが、 古いバージョンの との互換性のために残してあります。
bootptab
がロードする 設定ファイルの名前を指定します ( のみ)。 これはあらかじめ知っているクライアントと そのクライアントのオプションに関するデータベースです。
dumpfile
が、SIGUSR1 シグナルを受信したときに 内部データベースをダンプするファイルの名前を指定します ( のみ)。 このオプションは が -DDEBUG フラグ付きでコンパイルされたときだけ認識されます。
server
bootpgw が受信した全ての BOOTREQUEST パケットを転送する、 BOOTP サーバの名前を指定します ( bootpgw のみ)。

 

索引

操作

bootps ポートに送られたどんなパケットも取り込んで どんな BOOTREPLY パケットも単純に転送するという点で bootpgw の双方が似た動きをします。 BOOTREQUEST の扱いは違います。

bootpgw は動作開始時に、コマンド行パラメータとして名前を与えられた BOOTP サーバのアドレスを決めます。 bootpgw が BOOTREQUEST パケットを受信したとき、 パケットの「ゲートウェイアドレス」と「ホップ数」フィールドを設定し、 パケットを前に決めたアドレスの BOOT サーバへ転送します。 要求パケットは、 クライアントが少なくとも 3 秒は待っているとパケットが示している時にだけ 転送されます。

は動作開始時に設定ファイル (通常 /etc/bootptab を読みこみます。 これで、あらかじめ知っているクライアントと クライアントのオプションに関する内部データベースを初期化します。 この内部データベースは、 が回線切断シグナル (SIGHUP) を受信したとき、 または設定ファイルが変更されたことを 発見したときに、再読み込みが行なわれます。

が BOOTREQUEST パケットを受信したとき、 クライアントの要求に一致するデータベースエントリを探します。 もしそのクライアントをあらかじめ知っていれば は前に見付けたデータベースエントリを使って BOOTREPLY パケットを構成し、 (ひょっとしたらゲートウェイを使って) クライアントに返答を送ります。 もしクライアントが未知ならば、(debug > 0 のときは注意を出して) 要求は捨てられます。

が -DDEBUG オプションでコンパイルされていれば、 SIGUSR1 シグナルを送ると内部データベースをファイル /tmp/bootpd.dump か、コマンド行パラメータで指定されたダンプファイルに ダンプします。

初期化の時どちらのプログラムも、 (普通は /etc/services を使う) getservbyname(3) を呼ぶことで UDP ポート番号を決定します。 二つのサービス名 (とポート番号) が使われます:

bootps - BOOTP サーバ待機ポート
bootpc - BOOTP クライアント届け先ポート

もしポート番号が getservbyname(3) を使って決定できないときには、 デフォルト値は bootps=67 と bootpc=68 です。  

索引

関連ファイル

/etc/bootptab
によって読み込まれるデータベースファイル。
/tmp/bootpd.dump
によって生成されるデバッグダンプファイル。
/etc/services
インターネットサービス番号。
/tftpboot
TFTP サーバと で使われる典型的カレントディレクトリ。

 

索引

バグ

各々のホストエントリは 1024 文字を越えてはいけません。  

索引

功労者

この配布版は現在、 An Walter L. Wimer Aq walt+@cmu.edu によって 保守されています。

オリジナルの BOOTP サーバは スタンフォード大学の An Bill Croft によって 1986 年 1 月に作成されました。

現在のバージョンの は第一に、Carnegie Mellon University の An David Kovar , An Drew D. Perkins , An Walter L. Wimer の仕事によるものです。

機能拡張とバグフィクスは以下の方の貢献によります: (アルファベット順)

An -split An Danny Backx Aq db@sunbim.be , An John Brezak Aq brezak@ch.hp.com , An Frank da Cruz Aq fdc@cc.columbia.edu , An David R. Linn Aq drl@vuse.vanderbilt.edu , An Jim McKim Aq mckim@lerc.nasa.gov , An Gordon W. Ross Aq gwr@mc.com , An Jason Zions Aq jazz@hal.com .  

索引

関連項目

bootptab(5), inetd(8), tftpd(8)

DARPA Internet Request For Comments:

RFC951
Bootstrap Protocol
RFC1532
Clarifications and Extensions for the Bootstrap Protocol
RFC1533
DHCP Options and BOOTP Vendor Extensions


 

索引

Index

名称
書式
解説
オプション
操作
関連ファイル
バグ
功労者
関連項目

jman



Time: 07:07:35 GMT, January 12, 2009