C# 获取宽带连接(PPPOE拨号)的IP地址
C# 获取宽带连接(PPPOE拨号)的IP地址
C# Code:
/// <summary>
///获取宽带连接(PPPOE拨号)的IP地址,当宽带未连接或者连接中的时候获取不到IP
/// </summary>
/// <returns>IP地址</returns>
public static string GetInterNetIP()
{
int i = 3;//超时秒
while (i > 0)
{
try
{
NetworkInterface[] nics = NetworkInterface.GetAllNetworkInterfaces();
bool havePPPOE = false;
foreach (NetworkInterface adapter in nics)
{
if (adapter.NetworkInterfaceType == NetworkInterfaceType.Ppp)
{
havePPPOE = true;
IPInterfaceProperties ip = adapter.GetIPProperties(); //IP配置信息
if (ip.UnicastAddresses.Count > 0)
{
return ip.UnicastAddresses[0].Address.ToString();
}
}
}
//当没有宽带连接的时候直接返回空
if (!havePPPOE) return "";
}
catch (Exception ex)
{
Console.WriteLine("获取宽带拨号IP出错:" + ex.Message);
}
i--;
Thread.Sleep(500);
}
return "";
}
//来源:C/S框架网 | www.csframework.com | QQ:23404761
/// <summary>
///获取宽带连接(PPPOE拨号)的IP地址,当宽带未连接或者连接中的时候获取不到IP
/// </summary>
/// <returns>IP地址</returns>
public static string GetInterNetIP()
{
int i = 3;//超时秒
while (i > 0)
{
try
{
NetworkInterface[] nics = NetworkInterface.GetAllNetworkInterfaces();
bool havePPPOE = false;
foreach (NetworkInterface adapter in nics)
{
if (adapter.NetworkInterfaceType == NetworkInterfaceType.Ppp)
{
havePPPOE = true;
IPInterfaceProperties ip = adapter.GetIPProperties(); //IP配置信息
if (ip.UnicastAddresses.Count > 0)
{
return ip.UnicastAddresses[0].Address.ToString();
}
}
}
//当没有宽带连接的时候直接返回空
if (!havePPPOE) return "";
}
catch (Exception ex)
{
Console.WriteLine("获取宽带拨号IP出错:" + ex.Message);
}
i--;
Thread.Sleep(500);
}
return "";
}
//来源:C/S框架网 | www.csframework.com | QQ:23404761
版权声明:本文为开发框架文库发布内容,转载请附上原文出处连接
NewDoc C/S框架网