現在、IPアドレスでPCのホスト名を見つける必要があり、この関数でこの問題を解決しました:
/// <summary>
/// Returns the DNS Name of IP Address without the Domain.
/// </summary>
public string GetDNSNameFromReverseLookUp(string ip)
{
IPAddress hostIPAddress = IPAddress.Parse(ip);
IPHostEntry hostInfo = Dns.GetHostEntry(hostIPAddress);
return hostInfo.HostName.Substring(0, hostInfo.HostName.IndexOf('.'));
}
しかし、私はこのsubstring()
問題の解決策に満足していません。
この機能をこのように使用することは許されますか? それとも、将来のネットワークの問題を心配する必要がありますか? ドメインなしでホスト名に到達するためのより良い (より安全な) 方法はありますか?
文字列を処理する別の方法ではなく、より安全なネットワーク ソリューションを探しています。コメントで述べたように、すべての OS がホスト名を次の形式で返すわけではないことを少し恐れています[Hostname].[Domainname]
。