IE4でIPアドレスを取得するには

[上に] [前に] [次に]
匿名希望 [E-Mail] 1998/09/10(木) 10:48:37
サーバー側で、リモートユーザー毎にファイルを作成し、IE4のデータバインド機能を使って表示させようとしています。
ユーザー毎のファイル名を特定するのに、IPアドレスを使いたいのですが、IE4でIPアドレスを取得する事は可能でしょうか?
(NNのほうは、見つけたんですが・・) 現在はCookieで対処してます。

とほほ 1998/09/10(木) 23:33:50
サーバー側であれば、IE/NNに関係なくCGIを用いて環境変数
REMOTE_ADDR を参照することで可能・・・かな。

REI 1998/09/11(金) 02:35:06
↑Proxy使ってた場合どうする?
Proxyによっては環境変数吐かないのもあるし、127.0.0.1なんていう
ローカルアドレス吐くようなのもあるし・・・。

B-Cus 1998/09/11(金) 03:26:04
元の質問のデータバインドとかなんとかはよくわかりませんが…

> ↑Proxy使ってた場合どうする?

そしたらTCP/IPの仕組み的に言えば無理です。

HTTP_X_FORWARDED_FORや、USER_AGENTなどを見ればわかる場合も
ありますが、これは運良くわかっただけで、一般的にはProxyが
どこからのアクションによって ここにやってきたかを知ることは
できません。

匿名希望 1998/09/11(金) 08:43:14
>> ↑Proxy使ってた場合どうする?
>そしたらTCP/IPの仕組み的に言えば無理です。

その道では「ソケット渡し」と呼ばれている手法があります。

B-Cus 1998/09/11(金) 15:06:33
> その道では「ソケット渡し」と呼ばれている手法があります。

それはどういうもので、それを使うとProxyの先まで
たどれたりするんでしょうか。
ポインタでも結構ですのでよろしかったら教えてください。

匿名希望 1998/09/11(金) 15:49:11
see
http://www2s.biglobe.ne.jp/~cru/library/java/

B-Cus 1998/09/11(金) 16:23:36
ああ、なるほど。Java appletに再度接続させるわけですか。

しかしそこでも書かれていますが、ファイアーウォールがあって、
port80が通らないようになっている場合はうまくいかないかも
しれませんね。
# NNだとできて、IEだと失敗するというのが??ですが。

家の環境がそうなってるので(この環境ではない)、また後から
試してみます。

thanksでした。

mm 1998/09/11(金) 22:38:36
ありゃ、うちのHPだ!

># NNだとできて、IEだと失敗するというのが??ですが。
向こうにも書きましたが、watasi2 は、ファイアーウォールなどのために、
クライアントがプロキシサーバー経由でないと外部にアクセスできない
ような環境の場合に対処するためのもので、クライアント側でJavaの
InetAddressクラスを用いてローカルホストのアドレスを取得して、
これをURLクラスを使ってCGIに送るようにしています。
でも、NNだとちゃんとクライアントのIPアドレスを取得できるんですが、
IEだと127.0.0.1(localhost)しか取得できないということなのです。

たぶん、質問者の方が仰ってるのも、これと同じものじゃないかなぁ?
ただし、JavaScriptからjava.net.InetAddress.getLocalHost()で
呼び出してるんだと思いますが…
この場合は、IEのJavaScript(JScript?)がjava.net...でのJavaのクラスの
呼び出しをサポートしてないので、エラーになります。

B-Cus 1998/09/12(土) 07:39:59
元発言からはずれるので申し訳ないですが、ひとつだけ教えて
ください。

Java appletは、そのファイル(*.class)が置いてあったホストに
しか接続できないという制限があったと思うのですが、Proxy経由で
落としたappletって、proxyサーバと*.classのあったWWWサーバの
両方に接続できるのでしょうか。

mm 1998/09/13(日) 01:45:26
>Proxy経由で
>落としたappletって、proxyサーバと*.classのあったWWWサーバの
>両方に接続できるのでしょうか。
proxyの方は、無理だと思います。
通常のクライアントでは、proxyサーバを通す場合には、このproxyサーバのホストを
接続先として設定しますが、ここでのJavaAppletの場合は、Socketクラスを使う場合も
URLクラスを使う場合も、接続先のホストは、どちらもWWWサーバのものです。
でも、ブラウザにproxyサーバが設定されている場合には、URLクラスを使うと、
このproxyサーバ経由で接続されることになるのです。(Socketクラスでは、
proxyサーバの設定の有無に拘わりなく直です)

ところで、この手の話題がここではマズければ、うちの掲示板の方に書き込んで
頂いてもいいですが…
http://www2s.biglobe.ne.jp/~cru/library/zddbbs/cgi-bin/wwwboard.cgi

B-Cus 1998/09/13(日) 03:10:20
ども。ではそちらでもう少し質問させてください。

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