DHCPサーバ
りなざうには DHCPサーバデーモン、dhcpd本体が、標準で用意されています。
これは PCリンクを行う際、擬似的にネットワークデバイスとして扱われる usbd0にIPを割り当てるために使われているものです。
ですんで、実は設定を行ってやるだけでりなざうを DHCPサーバとして稼動させることが可能だったりします。
具体的に、りなざうをDHCPサーバとして稼動させるための手順は以下の通りです。
まず、設定ファイルを用意します。
# /etc/dhcpd.confsubnet 192.168.0.0 netmask 255.255.255.0{
range 192.168.0.100 192.168.0.116; # IPアドレスのリース範囲、この場合192.168.0.100-116の16個
default-lease-time 86400; # IPを貸し出す時間、基本的には余り触る必要なし
max-lease-time 86400; # 同じく、IPを貸し出す最大時間。上との違いが良くわからん(^^;)
option routers 192.168.0.1; # クライアントに知らされるデフォルトゲートウェイのアドレス
option domain-name-servers 192.168.0.1; # 同じく、クライアントに知らされる DNSのアドレス
option subnet-mask 255.255.255.0; # ネットマスク
}
次に、dhcpサーバからリースされる IPの記録ファイル
/var/state/dhcp/dhcp/dhcpd.leases
を用意します。ファイルの内容自体は、自動的に更新されるものですが、あらかじめ用意しておかないと dhcpdの起動時にエラーとなります。
mkdir /var/state/dhcp/dhcp
touch /var/state/dhcp/dhcp/dhcpd.leases
上記二つのファイルを用意したら、後は dhcpdを起動するだけ。
起動時には IPをリースする先のネットワークインターフェイスを指定します。
基本的に、りなざうで使用出来るネットワークインターフェイスは CFスロットの NICになるハズなので、
dhcpd eth0
でOKのはずです。
REX-CFU1経由で、USB-LAN変換アダプタなんかを使う場合は、この限りでは無いかもしんないけど、そのへんは使う人が自前で調べて下さい。ふつー、ifconfig -aなんかですぐ調べられると思うので(^^;)。
あ、当然っちゃあ当然ですが、ルート権限要りますんで。
@注意点
標準で入ってるこの dhcpdは、前述の通り本来、母艦PCとの接続(PCリンク)時に使用されます。
その際の起動オプションは、
/usr/sbin/dhcpd -cf /etc/hotplug/dhcpcd.conf -lf /var/state/dhcp/dhcp-usbd0.leases
この場合、USBインターフェイス(usbd0)に 192.168.129.201 が割り当てられています。
設定ファイルは
/etc/hotplug/dhcpcd.conf
ですが、これはPCリンク起動時に自動的に生成され、PCリンク終了時には削除されるので、普段は存在しません。
dhcpd自体は、別プロセスで複数同時に稼働させても問題は無い(?)ので、一応PCリンクとの共存自体に問題はありません。
ただ、何故か C700では dhcpdを動作している状態だと、標準のターミナルが起動出来なくなる現象が発生しました。
embedded-konsole等、別のターミナル入れると問題なく起動出来るんで、まぁそこまでクリティカルな問題ではありませんが、そもそも原因が分からないんで、ちょと不安です(^^;)。