2017-07-19 5 views
0

これは、サードパーティーを使用してPAFデータベースからアドレスを取得することです(英国以外のアドレスの場合も同様です)。彼らは検索をデフォルトにするためにどのような種類のアドレス(すなわち、イギリス/アイルランド/カナダ/アメーボイド・ジンガラード)を推定するためにクライアントのIPアドレスが必要です。 このトラフィックは、セキュリティ上の理由から、MVCコントローラ[HttpPost]アクションとして記述されたリレーに渡し、サーバに認証を注入します。サーバとクライアントが同じドメインにある場合、クライアントの外部IPアドレスを取得するにはどうすればよいですか?

私たちのソフトウェアがAzureでホストされているお客様には、MVCコントローラアクションとサードパーティのJavaScriptの間のトラフィックがインターネットに接続されたファイアウォールを通過し、Request.ServerVariables [ REMOTE_USER "]で十分です。 しかし、私たちのソフトウェアが前提条件にインストールされている場合はどうなりますか?それで、この方法が私に与えるIPが、ローカルネットワークに何かを意味するものではないのでしょうか?

私がその違いを検出できれば、私はIPを送信するかどうかを決めることができたので、第三者に決定させてください。

+0

私はこれを二重引用符といいますかどうかはわかりませんが[こちらを参照](https://stackoverflow.com/questions/3253701/get-public-external-ip-address)を参照してください。クライアントの外部IPアドレスを取得する必要があります。 –

+0

内部IPアドレスが与えられている場合は、外部サービスを手動で呼び出して、現在の場所やデフォルトを割り当てる以外の場所を取得する方法はありません。 – DavidG

答えて

0

ケースがソフトウェアをサーバーにインストールしている場合は、インストール時またはアプリケーションの開始時の場所を記録するのが簡単ではありません。

各呼び出しごとに読み込む必要はありません。 http://bot.whatismyipaddress.com/が一度だけ呼び出され、アプリのメモリに格納されていれば十分です。

また、このインストールされたソフトウェアのクライアントが同じ場所にあることを前提としています。ローカルIPアドレスを持っていればほぼ確実です。

+0

問題は、一部のお客様が当社のクラウドソリューションからサービスを受け取り、一部は引き続きオンプレミスインストールと見なすということです。私はすべてのための1つのソリューションを書く必要があります! IPが内部であるかどうかを検出し、それがあれば、第三者にインバウンドトラフィックからIPを返すようにIPを返そうとはしません。 – JimFR

関連する問題