- PR -

InetAddress.getByName(String)の仕様について

1
投稿者投稿内容
84
ベテラン
会議室デビュー日: 2005/11/04
投稿数: 83
投稿日時: 2007-03-27 11:52
【環境】
JDK1.3.1.20

InetAddress.getByName(String)の仕様について質問です。
@引数にホスト名を与えた場合
登録されているDNSで名前解決できればIPアドレスが取得できる。
A引数にIPアドレスを与えた場合
登録されているDNSで逆引きできればホスト名が取得できる。

という認識でいましたが、
Aの場合に、DNSで逆引きできないにも関わらずホスト名が取得できます。
これは一体どういうことなのでしょうか。

指定するIPアドレスのマシンを起動していない状態だと
ホスト名が取得できないので
IPアドレスのマシンに直接聞きに行っているのかと思いますが、
どういうプロトコルやルーチンなのでしょうか。

またこの部分の実装はOSによって異なるのでしょうか。

どなたかご存知の方いらっしゃいましたらご教示ください。
よろしくお願いいたします。
あしゅ
ぬし
会議室デビュー日: 2005/08/05
投稿数: 613
投稿日時: 2007-03-27 16:02
WindowsではDNSだけではなくWINSも使って解決すると思います。
Linuxでもnsswitch.confでNISやwinbindなどを追加できますし。

OSのgethostbyname()を使っていればそういう挙動になります。
1

スキルアップ/キャリアアップ(JOB@IT)