using System.Collection;
using System.Net;
using System.Net.NetworkInformation;
static IPAddress[] GetAllAddressV6()
{
IPAddress [] ret = null;
ArrayList alRet = new ArrayList();
NetworkInterface[] adapters =
NetworkInterface.GetAllNetworkInterfaces();
foreach(NetworkInterface adapter in adapters)
{
IpInterfaceProperties adapterProperty =
adapter.GetIPProperties();
UnicastIPAddressInformationCollection allAddress =
adapterProperty.UnicastAddresses;
foreach(UnicastIPAddressInformation addr in
allAddress)
{
if (addr.Address.AddressFamily ==
AddressFamily.InterNetworkV6)
{
alRet.Add(addr.Address);
}
}
}
ret = alRet.ToArray(typeof(IPAddress)) as IPAddress[];
return ret;
}
using System.Net;
using System.Net.NetworkInformation;
static IPAddress[] GetAllAddressV6()
{
IPAddress [] ret = null;
ArrayList alRet = new ArrayList();
NetworkInterface[] adapters =
NetworkInterface.GetAllNetworkInterfaces();
foreach(NetworkInterface adapter in adapters)
{
IpInterfaceProperties adapterProperty =
adapter.GetIPProperties();
UnicastIPAddressInformationCollection allAddress =
adapterProperty.UnicastAddresses;
foreach(UnicastIPAddressInformation addr in
allAddress)
{
if (addr.Address.AddressFamily ==
AddressFamily.InterNetworkV6)
{
alRet.Add(addr.Address);
}
}
}
ret = alRet.ToArray(typeof(IPAddress)) as IPAddress[];
return ret;
}
原帖请参见 这里
注:当上述方法返回的数组长度为零时,就说明当前主机根本没有被分配合适的IPV6地址。
没有评论:
发表评论