web-dev-qa-db-ja.com

サーバーはどのようにしてユーザーのIPアドレスを取得しますか?

サーバーはどのようにしてユーザーのIPアドレスを取得しますか? IPアドレスを偽装してサーバーをだますことは可能ですか?

26
open source guy

サーバーにリクエストを送信するとき、サーバーは応答する場所を知る必要があります。それはあなたのIPアドレスです。これは直接TCP/IPプロトコルに基づいており、Webサーバーよりも低いレベルにあります。

FirebugがあなたのIPアドレスを表示しない理由は、メール(紙)を受け取ったときのようで、あなたのアドレスが前に、送信者が後ろにあります。 Firebugsは、送信者と受信者のアドレス(ITのIP)ではなく、手紙の内容を表示します。

19
Cyril N.

送信元IPアドレスが異なるレベルで送信されています。それを表示したい場合は、別のツールを使用する必要があります(例: WiresharkPacketyzer または Microsoft Network Monitor ))。 FirebugはHTTPリクエストのみを表示し、IP接続の詳細は表示しません。

送信元IPアドレスを偽装するには、いくつかの パケットジェネレータ を使用できます。送信元IPアドレスを偽装すると、サーバーがその送信元アドレスに応答することに注意してください。 このビデオ を見て、IPスプーフィングの詳細を確認してください。

9
bretik

前に説明したように、Webサーバーにページを要求する場合、返信には基本的にアドレスが必要です。これは基本的なネットワーキングの原則です。詳細については、これらの動画をyoutubeで検索できます CCNA IP ADDRESSES

ここに示すような単純なCコード DP Flooder を使用して、IPアドレスを偽装することができます。この場合、コードはランダムなIPアドレスまたは定義されたIPアドレスを使用して電話をフラッディングし、電話はを介してのみ応答しますランダムまたは巧妙に細工されたIPアドレスにPINGします。 (このツールはテスト目的でのみ作成されたものであり、ご自分の機器でのみ使用できることに注意してください)

そして最後に、ネットワークパケットを操作したい場合は、scapy Here に関するこの良いチュートリアルを使用して、パケットを偽造できます。 (基本的にチュートリアルでは、Scapyを使用してMan in the Middleを作成する方法を示します)

6
noktec

コンピューターのHTTPヘッダーは OSIモデル (アプリケーションレイヤー、レイヤー7)の最上位レイヤーにあり、デバイスの各レイヤーを移動するときに新しいヘッダーが適用されます。 IPアドレスは、ネットワークレイヤー(レイヤー3)まで追加されません。 Firebugは送信しているHTTPヘッダーのみを確認し、ネットワークスタックの下の方のトラフィックを検査しません。

たとえば、プロキシまたはVPNを使用してIPアドレスを変更することが可能です。ただし、IPアドレスをスプーフィングすると、サーバーはそのスプーフィングされたIPアドレスに応答を送信するので、これは主にIDを隠したい場合に使用され、戻りパケットについて心配しません。詳細は IPアドレススプーフィング を参照してください。

3
SomethingSmithe

サーバーと通信するときにIPアドレスを「非表示」にしたい場合は、プロキシ経由でトラフィックを送信できます。その後、サーバーは「yours」ではなくプロキシのIPアドレスを参照します。匿名化サービスを探している場合は、VPNトンネルプロバイダーを検索するか、 Tor、オニオンルータープロジェクト を参照してください。

3
MattBianco

クライアントのIPアドレスは、ボックスが有効になっている場合、HTTPヘッダーのX-Forwarded-Forフィールドでキャプチャできます。 Webファームでは、通常、サーバーロードバランサーで構成されます。パスにNATデバイスがある場合、構成が必要です。

1
Muhammad Tariq