private IPAddress[] GetDefaultNetworkInfo(out IPAddress ipv4, out IPAddress ipv6)
{
IPAddress[] ips = Advtools.AdvInterceptor.Network.GetIpsByWmi();
ipv4 = null;
ipv6 = null;
foreach(IPAddress ip in ips)
{
if(ipv4 == null && ip.AddressFamily == AddressFamily.InterNetwork)
{
Logger.Config("Default IPv4 address is {0}", ip);
ipv4 = ip;
}
if(ipv6 == null && ip.AddressFamily == AddressFamily.InterNetworkV6)
{
Logger.Config("Default IPv6 address is {0}", ip);
ipv6 = ip;
}
if(ipv4 != null && ipv6 != null)
break;
}
if(ipv4 == null)
{
Logger.Warning("No valid default IPv4 address found, take the loopback");
ipv4 = IPAddress.Loopback;
}
if(ipv6 == null)
{
Logger.Warning("No valid default IPv6 address found, take the loopback");
ipv6 = IPAddress.IPv6Loopback;
}
return ips;
}