您的位置:首页 > 其它

获取用户电脑的上网IP地址

2012-05-02 09:51 211 查看
在项目中经常要获取用户的上网的IP地址,如何获取用户的IP地址,方法很多,现在介绍以下2种。

/// <summary>

/// 获取本机在局域网的IP地址

/// </summary>

/// <returns></returns>

private string GetLocalIPAddress()

{

System.Net.IPAddress[] addressList = Dns.GetHostEntry(Dns.GetHostName()).AddressList;

string strNativeIP = "";

string strServerIP = "";

if (addressList.Length > 1)

{

strNativeIP = addressList[0].ToString();

strServerIP = addressList[1].ToString();

}

else if(addressList.Length==1)

{

strServerIP = addressList[0].ToString();

}

return strServerIP;

}

另外一种就是抓取网页中查询到的上网地址的IP来实现的。实现如下:

/// <summary>

/// 获取本机的上网IP

/// </summary>

/// <returns></returns>

private string GetConnectNetAddress()

{

string strUrl = "http://www.ip138.com/ip2city.asp"; //获得IP的网址

Uri uri = new Uri(strUrl);

WebRequest webreq = WebRequest.Create(uri);

Stream s = webreq.GetResponse().GetResponseStream();

StreamReader sr = new StreamReader(s, Encoding.Default);

string all = sr.ReadToEnd(); //读取网站返回的数据 格式:您的IP地址是:[x.x.x.x]

int i = all.IndexOf("[") + 1;

string tempip = all.Substring(i, 15);

string ip = tempip.Replace("]", "").Replace(" ", "").Replace("<", "");

return ip;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: