$ENV{'REMOTE_HOST'}について

[上に] [前に] [次に]
さと 1999/11/17(水) 09:31:08
素朴な疑問なのですが、
infowebとかinterQのなどのように、
$ENV{'REMOTE_HOST'}でリモートホスト名を表示できない
プロバイダがありますが、
これは、セキュリティ上の処置なのでしょうか?
それともサーバに負荷をかけないためなのでしょうか?
どの程度、危険もしくは負荷がかかるのか、
ご存じの方がいらしたら、教えて下さい。

Shige 1999/11/17(水) 16:42:55
$ENV{'REMOTE_HOST'}だけ空白にしても、$ENV{'REMOTE_ADDR'}のほうにIPアドレスが出るのでセキュリティー的にはあまり変わらないような気もします。
サーバーにかかる負担についてはよく分かりませんが、やはり負担は少なくなっているのではないでしょうか。
あ、サーバーというよりネットワークかも。
もしかするとただ単にDNS(ドメイン・ネーム・サーバー)にそのIPアドレスがホスト名として登録されていないだけかも知れません。

私もそんなにネットワークに詳しいわけじゃないので、あくまでもひとつの推論程度に思っておいて下さい。

Selly 1999/11/17(水) 23:29:19
REMOTE_HOSTを取得するためにはネームサーバに逆引きの問い合わせをする必要があるのでネットワークに負荷がかかります。
そのため、ApacheではREMOTE_HOSTを取得しないような設定ができます。

#最近のApacheはデフォルトで逆引きしないらしい

さと 1999/11/22(月) 17:10:48
[[解決]]
Shigeさん、Sellyさん、ありがとうございました。
たいへん勉強になりました。

個人レベルではあまり関係ないかも知れませんが、
これからは、むやみにREMOTE_HOSTを取得しないようにしようと思います。

Shige 1999/11/22(月) 18:22:46
もう解決マークついていますが、ちょっと疑問なので。

>これからは、むやみにREMOTE_HOSTを取得しないようにしようと思います。
CGIの環境変数はCGIが起動されるときにサーバーが渡してくれるのですよね?
つまり、REMOTE_HOSTが表示できるサーバーの場合はCGI実行の時にすでにサーバーが
ホストネームの逆引きを行っているんですよね?
ということはCGIの中でREMOTE_HOSTを使わないというのは関係ないような気もしますが。

[上に] [前に] [次に]