dhclient-scriptを書き変えるのではなく、$ENTERHOOKS と
$EXITHOOKS のファイルを書き変えよ。これNetBSD。
お、FreeBSD は enterhooks と exithooks ファイルはそれぞれ、
/etc/dhclient-enter-hooks, /etc/dhclient-exit-hooks
ファイ
ル。
resolv.conf
を書き変えられたくなかったら、
dhclient-enter-hooks
で、make_resolv_conf 関数を
再定義すべし。make_resolv_conf(){}
でええじゃろ。
で、dhclient-script が呼ばれるときに設定されている環境変数はこんな感じ。
PATH=/usr/bin:/usr/sbin:/bin:/sbin interface=aue0 new_broadcast_address=10.0.0.255 new_dhcp_lease_time=3600 new_dhcp_message_type=5 new_dhcp_option_overload=3 new_dhcp_server_identifier=10.0.0.25 new_domain_name=yk.gentei.org new_domain_name_servers=10.0.0.25 new_expiry=1043132413 new_ip_address=10.0.0.3 new_network_number=10.0.0.0 new_routers=10.0.0.95 new_subnet_mask=255.255.255.0 new_time_offset=32400 old_broadcast_address=10.0.0.255 old_dhcp_lease_time=2225 old_dhcp_message_type=5 old_dhcp_option_overload=3 old_dhcp_server_identifier=10.0.0.25 old_domain_name=yk.gentei.org old_domain_name_servers=10.0.0.25 old_expiry=1043081615 old_ip_address=10.0.0.3 old_network_number=10.0.0.0 old_routers=10.0.0.95 old_subnet_mask=255.255.255.0 old_time_offset=32400 pid=23226 reason=BOUND
ちうこって、$new_ip_address, $new_domain_name_server,
$new_routers, $interface
あたりを参照すればたいていの処理はできる
かな。CATVとかのDHCPによるIPアドレス配付接続で使えそう。