[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:20210] Re: find hostname



水原と申します。

いっぱい反応があると思うのですが…

At Thu, 20 Jan 2000 00:00:08 +0900,
Masateru OHARA <car31930@xxxxxxxxxxxxxxx> wrote:
> 
> Plain@おはら です。
> 
>  ホスト名から、IPアドレスを検索するのに、/etc/hosts
>  を使って検索しようとしています。

ホスト名から IP アドレスを解決するのが目的ですよね?

>  /etc/hostsには以下のように、記述していますが、
>  127.0.0.1    localhost
>  192.168.1.1  マシン名.ドメイン
> 
>  # nslookup 192.168.1.1

まず、ここに2つの勘違いがあると思います。

(1) nslookup は、DNS を引くためのコマンドです。/etc/hosts は参照しません。
(2) これでは 192.168.1.1 という IP アドレスからホスト名を引くことになっ
    てしまいます (いわゆる逆引き)。

ホスト名から IP アドレスを解決するには gethostbyname() を使います。
具体的には
# ping host.domain
などとすると gethostbyname() が呼ばれ、/etc/nsswitch.conf の設定に従って
/etc/hosts を参照しに行くはずです。

また、本当に IP アドレスからホスト名を引きたいのならば、
# nslookup
> set q=ptr
> 1.1.168.192.in-addr.arpa
とします。もちろん、それなりの named の設定が必要ですし、外部のアドレス
の場合、セキュリティ上逆引きができないようにしている場合もありますから、
必ず成功するとは限りません。

>  *** Can't find server name for address 192.168.1.1: No response from server
>  *** Default servers are not available
>  と言われてしまいます。

bind はインストールしていますか?
/etc/named.conf はどうなっていますか?
-- 
水原@表千家 <mizuhara@xxxxxxx>