public INetworkInterfaceData GetActiveNetworkInterface(IPAddress localIPAddress, List <INetworkInterfaceData> networkInterfaces) { if (_activeNetworkInterface != null) { return(_activeNetworkInterface); } try { foreach (var networkInterface in networkInterfaces) { foreach (var ipAddress in networkInterface.UnicastIPAddresses) { if (ipAddress.Address.Equals(localIPAddress)) { return(_activeNetworkInterface = networkInterface); } continue; } } } catch (Exception exception) { Log.WarnFormat("Unable to get an active network interface: {0}", exception.Message); } return(_activeNetworkInterface = new NetworkInterfaceData(string.Empty, new List <UnicastIPAddressInformation>())); }
public string GetDomainName(INetworkInterfaceData networkInterfaceData) { try { return(networkInterfaceData?.DnsSuffix ?? string.Empty); } catch (Exception exception) { Log.WarnFormat($"Error retrieving domain name from network interface: {0}", exception); } return(string.Empty); }