Merajuddin Ansari Ответов: 1

Не удалось получить какое-то имя клиентского компьютера, посетив мою интрасеть


Привет,
я не могу получить какое-то имя клиентского компьютера, не все посещающие мой сайт интрасети.любой может помочь мне в этом, пожалуйста.
спасибо

Что я уже пробовал:

public string GetComputerName(string clientIP)
{
    try
    {
        var hostEntry = Dns.GetHostEntry(clientIP);
        return hostEntry.HostName;
    }
    catch (Exception ex)
    {
        return string.Empty;
    }
}

//call GetComputerName function

string computerName=GetComputerName(HttpContext.Current.Request.UserHostAddress)

Merajuddin Ansari

ошибка: запрошенное имя является допустимым, но данные запрошенного типа не найдены

1 Ответов

Рейтинг:
0

Jochen Arndt

Это не проблема вашего приложения. Возможные причины заключаются в том, что нет DNS-сервера для сети, к которой принадлежит IP, есть DNS-сервер, но у которого нет записи для этого IP, или IP принадлежит другой локальной подсети, чем локальная подсеть вашей системы.

Вы можете проверить это в командной строке с помощью команда nslookup польза:

nslookup ip-address
Если это тоже не удается, вы ничего не можете сделать в своем приложении, кроме как поймать эту ошибку и вернуть вместо нее, например, IP-адрес (ловить ошибки всегда хорошая идея; особенно с операциями, которые могут завершиться неудачей по разным причинам, таким как сеть).

Если существует локальный DNS-сервер, но у него нет записи для этого IP-адреса, вы также можете обратиться к администратору этого сервера.