perlで、ホスト名からIPアドレスを引くには?
[上に]
[前に]
[次に]
ポンタ
2000/01/05(水) 11:51:08
perlを書き始めて日も浅く解らない事ばかりなのですが、
perlで、ホスト名からIPアドレスを引くにはどの様
にしたらよいのでしょうか。
#IPアドレスからホスト名を引く事は、
$addr = "127.0.0.1";
$host = gethostbyaddr(pack("C4", split(/\./, $addr)), 2);
で、出来たのですが、ちょうどこの逆の事をしたいと思っております。
(とほほのperl入門の通りで、感謝!感謝!!でした。)
猫
2000/01/05(水) 23:32:10
$ENV{'REMOTE_ADDR'}が必ず取得できるので、どんな時に使うのか考えたことも無かったですけど、予想ではgetnetbyname()ですかねぇ?
家でやったらスカラーコンテキストは空。
リストコンテキストは0がひとつ帰ってきました。
要するに何も入ってなかった。う〜む・・・
きたむら
2000/01/05(水) 23:46:28
お、これは知っています。
$host = "www.hoge.ne.jp";
$addr = join(".", unpack("C4", gethostbyname($host)));
です。
#そろそろIPV6なども視野に入ってきたので、"C4"は"C*"にしとくほうが
#いいのかもしれません(実はよくわかってない>IPV6)。
ポンタ
2000/01/06(木) 14:23:56
[[解決]]
きたむら>$host = "www.hoge.ne.jp";
きたむら>$addr = join(".", unpack("C4", gethostbyname($host)));
すごい。出てきた出てきた。
きたむらサンの書かれた通りで出力されました。
ありがとうございました。(感謝!感謝!!) =====>きたむらさん
$ENV{'REMOTE_ADDR'}でやったら..。
という助言ですね。ありがとうございました。==>猫さん
[上に]
[前に]
[次に]