サーバーがルーターの背後にある場合、どうすればユーザーのパブリックIPを取得できますか?
私はしようとしています:
protected string GetIPAddress()
{
System.Web.HttpContext context = System.Web.HttpContext.Current;
string ipAddress = context.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
if (!string.IsNullOrEmpty(ipAddress))
{
string[] addresses = ipAddress.Split(',');
if (addresses.Length != 0)
{
return addresses[0];
}
}
return context.Request.ServerVariables["REMOTE_ADDR"];
}
しかし、私が得るのはルーターゲートウェイだけです。
どうやら、REMOTE_ADDR
私の場合は機能せず、どちらも機能しませんHTTP_X_FORWARDED_FOR
。
私の場合、ユーザーのパブリックIPを取得する方法について何かアイデアはありますか?
ありがとう。