- ベストアンサー
IPアドレスとリモートホストで個人識別
- IPアドレスとリモートホストを使用して特定の個人を判定する方法について教えてください。
- IPアドレスとリモートホストの関係について調べていました。悪意を持った利用者を特定するためにはどのような処理を行えば良いのでしょうか。
- 特定の個人を特定するためにIPアドレスとリモートホストを逆引きするプログラムを作成する方法について教えてください。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
詳しい説明は省きますが、結論だけ言うと不可能です。 簡単に言うと、ホスト名はIPアドレスと1:1で対応するネットワーク上のリストだと思っていれば良いです。ひとつのIPアドレスを使いまわしているに過ぎませんからね。 そもそも「特定の個人をはじく」という考え方自体がウェブには存在しません。 【引用】____________ここから Webの背景をなす基本的な原理は次のようなものである。どこかの誰かが、 ひとたび文書、データベース、画像、音声、動画あるいはある程度まで インタラクティブな画面を準備したなら、もちろん使用許諾の範囲内のことだが、 いかなる国のどのようなコンピュータを使っている誰もが、この画面に対して アクセス可能でなければならない。そして、ほかの人たちが見つけることができる ように、リファレンスすなわちリンクをつくれるようにしなければいけない。  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ここまで[よいウェブページを書こうとする人のためのヒント( http://www.sal.tohoku.ac.jp/~gothit/webauthoring2.html )]より もしも、あるデータを特定の(複数の)限定された人々にのみ利用させたいのでしたら、パスワードをかけるなりして閲覧制限をかけるしか方法はありません。HTTPサーバーにはbasic認証と言う手段がありますし、cookie、CGIなどを利用した様々な方法があります。 発想を逆にして、「許可された人だけが閲覧できる」方法を考えてください。(--ウェブの本来の目的とは外れますが)
その他の回答 (3)
- Wr5
- ベストアンサー率53% (2173/4061)
う~ん…… もしかして、IPアドレスで逆引きしたら、接続しているPCのホスト名(Windowsだとコンピュータ名…かな)が取得できると思いましたか? であれば、全然違います。 そのLAN内部であればプライベートIPアドレスからホスト名が引ける「かも」知れませんが、外から対象PCのプライベートIPアドレスを知ることは原則的に出来ませんし、 知れたところでそのLAN内部のDNSに問い合わせて回答があるとは思えません。 たいていはプロバイダが管理の為につけた名前が引けるだけです。 # 既に回答されているように引けない場合もあります。 そして…学校からとか企業からとかのアクセスの場合、「個人」の特定ではありません。 # プロクシ使用された場合も、接続元が閲覧している人のグローバルIPアドレスである保証はありません。 リンク先のCGIでは、単純にDNSに逆引きを依頼しているだけでしょう。 DNS自体にそういう機能がありますし。 # まぁ、DNSのプロトコルを自前で実装してもいいでしょうが…そういうレベルの車輪の再発明は不毛でしょう。 >HPを見てくれた人が悪意を持ってHPを利用した場合、その特定個人をHPを見られなくしたいのですがここで問題が。 cookieとか使って個人識別(cookie拒否されたらどうにも出来ない)、拒否したいIPアドレスのプロバイダの保有するIPアドレス群を全部接続拒否(無関係の人も拒否って安全確実)とかでしょうかね。 2ちゃんねるで時々アクセス規制の巻き添え食らった…とかあったりしますけど……拒否は確実でしょう? 巻き添え食らった無関係なユーザーには迷惑ですが、同じプロバイダ使用している連帯責任って事で。 # まあ、プロバイダではなく学校だったり企業だったりする事もあるかも知れませんが……。
お礼
ああ、でもでも結局、禁止なり許可なりするのは私が手作業ですることになるからプログラムで判定するのは不毛になりそうだから私が調べて手作業で判断するしかないかも あわてまぢたが今度こそOKだと思います
補足
個人を拒否するのは無理ですか・・・2chのようにまとめて拒否するしかなさそうですね まとめて拒否しても問題にはなるとは思いますが防衛のため仕方ありません 拒否したいIPアドレスのプロバイダの保有するIPアドレス群を調べて拒否してみますね ああでも拒否したい+許可する の組みあわせを使えば(拒否しちゃいのグループに入った)ユーザーからは面倒でもちゃんと見てもらえる気がします。 (そういう制限をかけただけで新規ユーザーは離れちゃいますが) <<リンク先のCGIでは、単純にDNSに逆引きを依頼しているだけでしょう。 DNS自体にそういう機能がありますし。 そうなんですかサーバーをちゃんと弄繰り回せばできるってことですね。 # まぁ、DNSのプロトコルを自前で実装してもいいでしょうが…そういうレベルの車輪の再発明は不毛でしょう。 固有のIPアドレスならいけそうなんですけどね いつだったか忘れましたがレンタルの掲示板にスパムの荒し(IPがころころ変わる)が舞い降りたときにIP禁止で応戦してたのですが、埒が明きませんでしたのでそのことは分かる気がします 不思議なのは企業のHPとかの掲示板は何でスパム書き込みが着てないんだろう? とはおもってましたけどね Wr5さんメリークリスマスです 皆さんもメリークリスマスです
- wormhole
- ベストアンサー率28% (1626/5665)
そもそも個人でグローバルIPアドレスを取得でもしてない限り ・個人のグローバルIPアドレス というのは存在しません。多くの場合、一時的にプロバイダからグローバルIPアドレスを借りているだけですし常に同じ個人に同じグローバルIPアドレスが貸し出されるわけでもありません。 また#1の方もいわれていますが個人に貸し出されるグローバルIPアドレスに対応する逆引きできるホスト名は1つないしは0がほとんどなのでホスト名で判断するのはグローバルIPアドレスで判断するのと変わりありません。 ですので、グローバルIPアドレスや逆引きで得られたホスト名で個人を判断するのは基本的にできません。 さらに「個人」と書いていますが実際に貸し出されるのは「個人」に対してではありません。貸し出されるのはWANに接続している機器に対してです。
補足
<<逆引きできるホスト名は1つないしは0 困りましたね ではどうやって皆さんは荒し対策してるのでしょうか?
- notnot
- ベストアンサー率47% (4900/10358)
逆引きはできますけど、リモートホスト名は、一般家庭で利用するプロバイダや携帯回線経由の場合はIPアドレスと1対1対応でつけられています。つまり、「IPアドレスで判断」と「リモートホスト名で判断」は全く同じ意味を持ちます。 「特定の人のみ閲覧不可」は、原理的に不可能と思ってください。 「特定の人のみ閲覧可能」はパスワードもしくはクッキーによって可能ですので、それで代替するしかない。
補足
確かにパスワードを使ってなら特定の個人を識別可能ですね ずっと不思議に思ってたのですが私はIPアドレスがころころ変わるのにパスワードを使うことなくそれでも私だと判断されてるのはなぜだ? っと疑問だったのですよね 今思えばクッキーを使っていたのかもしれませんね
お礼
ああダメだわ動的IPに対応できない ああこうしましょう 固有IP群を登録しておいてそれ以外は強引だけど動的IPとして扱ってそちらはリモートホストで判別するしか そしてリモートホストを表示させる方法を何とかするしかないねj
補足
<<発想を逆にして、「許可された人だけが閲覧できる」方法を考えてください。(--ウェブの本来の目的とは外れますが) 現在の企業のHPは掲示板に書き込むのにもパスワードを入れてログインし書き込む方式で正直めんどくさかったのですが、もしかすると昔は私が知らないだけで企業の人々がスパムメールを見つけてすぐに消しまくってたのかもしれませんね 何せ個人と違って数が多いですし・・・ ただ今までの話で思いついたのですがパスワード発行の際もIPアドレスの判定とかをしておいたほうがよさそうってことですね 皆さんいろいろと書き込みありがとうございました 大体つくりたいものは絞れました。 手順 一・悪意がある人がHPを荒らした ニ・悪意のある人と同じプロパイダ・学校・企業グループのIPアドレス群を規制 三・無関係な人がHPを利用しようとしたら許可を求めるためのHPのページを表示しておく 四・私が許可OKの判断を下したら無関係な人のIPアドレスをHPを利用可能にする パスワードを使わないのはある程度誰にでも書き込めるタイプにしたかったからですね もちろんログインしないとHPを利用できないHPも作る予定ですが ベストアンサーを誰にしましょうかね