public async Task <string> GetHostname(string target) { // Example 54.172.75.131 / ec2-54-172-75-131.compute-1.amazonaws.com NetworkIpResolver resolver = new NetworkIpResolver(); resolver = await this.IPResolver(target); return(resolver.HostName); }
public async Task <NetworkIpResolver> IPResolver(string target) { NetworkIpResolver resolver = new NetworkIpResolver(); try { if (!IPAddress.TryParse(target, out IPAddress ipAddress)) { throw new Exception("Invalid IP address"); } resolver = await this._pingReplyService.ExecuteIPAddressResolver(target); } catch (Exception ex) { resolver.Message = ex.InnerException.Message; resolver.StackTrace = ex.InnerException.StackTrace; } return(resolver); }
public async Task <NetworkIpResolver> ExecuteIPAddressResolver(string ipAddress) { NetworkIpResolver resolver = new NetworkIpResolver(); resolver.IP = ipAddress; await Task.Run(() => { try { // Example "54.172.75.131" IPHostEntry ipToDomain = Dns.GetHostEntry(ipAddress); resolver.HostName = ipToDomain.HostName; } catch (Exception ex) { resolver.HostName = "Unknown"; resolver.Message = ex?.Message; resolver.StackTrace = ex?.StackTrace; } }); return(resolver); }