asp.net クライアントIPアドレスの取得
System.Web.HttpContext.Current.Request.UserHostAddress
を使うとアドレス情報がIPv6で取れてしまう。
以下の方法でIPv4形式で取得可能。
*****************************
string ipa = "";
System.Net.IPHostEntry iphEntry = System.Net.Dns.GetHostEntry(System.Net.Dns.GetHostName());
foreach (var ipAddr in iphEntry.AddressList)
{
if (ipAddr.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork)
{
ipa = ipAddr.ToString();
break;
}
}
長い。