クライアントは DHCP 要求をブロードキャストで送信します。しかし、ブロードキャストで送信したパケットは、他のサブネットに転送されない、つまりルーターを越えることはできませんので、通常、DHCP サーバーはサブネットごとに用意しなければなりません。しかし、サブネットごとに DHCP サーバーを用意して管理することは、煩雑な作業です。そこで、DHCP サーバーが存在しないサブネットからの DHCP 要求を、他のサブネットにある DHCP サーバーへ転送する手段を提供する DHCP リレーエージョントと呼ばれるプログラムを利用することができます。DHCP リレーエージェントを利用すると、異なるサブネットへの DHCP サービスを 1 台の DHCP サーバーで運用できるため、管理が容易になるだけでなく、コスト的な効果も期待することができます。
Turbolinux 11 Server で DHCP リレーエージェント機能を提供するプログラムは /usr/sbin/dhcrelay です。以下では dhcrelay コマンドの書式と簡単な実行例を示します。
dhcrelay [-p port] [-d] [-q] [ -i if0 [ ... -i ifN ] ] server0 [ ...serverN ] |
指定可能なオプションは以下の通りです。server0 には、DHCP 要求を転送する DHCP サーバーを指定します。
表 15-4. dhcrelay のオプション
| 引数 | 説明 |
|---|---|
| -p port | dhcrelay が標準で使用する 67 番ポート以外で DHCP 要求を待ち受けたい場合に使用します。 -p オプションの後に dhcrelay を待機させる udp のポート番号を指定します。 |
| -d | dhcrelay は通常ネットワークインターフェースの設定が完了するまではフォアグラウンドで動作し、完了するとバックグラウンドに移動します。このオプションを指定すると、dhcrelay は常にフォアグラウンドで動作します。 |
| -q | dhcrelay は、起動時にネットワーク設定を表示します。この動作を無効にするには、このオプションを指定します。 |
| -i if0 | dhcrelay が DHCP 要求を待ち受けるネットワークインターフェースを指定できます。ネットワークインターフェースの指定がされない場合、dhcrelay は全てのネットワークインターフェースで DHCP 要求を待ち受けます。 |
例えば、以下のようにサブネットの異なるネットワークがルーターで接続されている場合、DHCP クライアントが DHCP サーバーからネットワーク情報を受け取るには DHCP リレーエージョントを動作させるホストで以下のように dhcrelay コマンドを実行します。

# dhcrelay -i eth0 172.16.0.10 |
![]() | Turbolinux 11 Server の起動時に DHCP リレーエージョントを動作させるには、/etc/rc.local に dhcrelay コマンドを追記します。 |