[Q1] DHCP client にした場合,ホスト名が unknown になってしまう。
[A1] Solaris は,DHCP server に対し,
dhcpinfo Hostname
を発行してホスト名を得ようとしますが,これに対応していない DHCP server の場合,(IP address は取得できても) ホスト名を 取得できないということが起こります。
/etc/nodename などにより,IP address に依らずホスト名を 勝手につけてしまうこともできますが,global IP を配る DHCP server を利用している場合,これはあまりよろしくありません。 そこで,
#!/bin/sh hostname=`dhcpinfo Hostname 2> /dev/null` ipaddr=`dhcpinfo Yiaddr 2> /dev/null` if [ -z "$hostname" -a ! -z "${ipaddr}" ]; then /sbin/nslookup ${ipaddr} |\ /bin/grep '^Name:' |\ /bin/sed 's!^Name: *\([a-z].*\)$!\1!' else echo $hostname fi
などといった script を適当な名前で保存して実行属性を与え, /etc/init.d/inetsvc および /etc/init.d/network 内の `dhcpinfo Hostname` の部分をこれを使うよう変更してやると,かなり上手くいくでしょう。
Copyright © 2000-2001 -- tsumura@tomo.gr.jp