Dns.GetHostEntry Dns.GetHostEntry Dns.GetHostEntry Dns.GetHostEntry Method

定義

ホスト名または IP アドレスを IPHostEntry インスタンスに解決します。Resolves a host name or IP address to an IPHostEntry instance.

オーバーロード

GetHostEntry(IPAddress) GetHostEntry(IPAddress) GetHostEntry(IPAddress) GetHostEntry(IPAddress)

IP アドレスを IPHostEntry インスタンスに解決します。Resolves an IP address to an IPHostEntry instance.

GetHostEntry(String) GetHostEntry(String) GetHostEntry(String) GetHostEntry(String)

ホスト名または IP アドレスを IPHostEntry インスタンスに解決します。Resolves a host name or IP address to an IPHostEntry instance.

GetHostEntry(IPAddress) GetHostEntry(IPAddress) GetHostEntry(IPAddress) GetHostEntry(IPAddress)

IP アドレスを IPHostEntry インスタンスに解決します。Resolves an IP address to an IPHostEntry instance.

public:
 static System::Net::IPHostEntry ^ GetHostEntry(System::Net::IPAddress ^ address);
public static System.Net.IPHostEntry GetHostEntry (System.Net.IPAddress address);
static member GetHostEntry : System.Net.IPAddress -> System.Net.IPHostEntry
Public Shared Function GetHostEntry (address As IPAddress) As IPHostEntry

パラメーター

address
IPAddress IPAddress IPAddress IPAddress

IP アドレス。An IP address.

戻り値

address で指定するホストについてのアドレス情報を格納する IPHostEntry インスタンス。An IPHostEntry instance that contains address information about the host specified in address.

例外

address を解決するときにエラーが発生しました。An error is encountered when resolving address.

address は無効な IP アドレスです。address is an invalid IP address.

次のコード例では、GetHostEntryメソッドを解決するには、IP アドレスをIPHostEntryインスタンス。The following code example uses the GetHostEntry method to resolve an IP address to an IPHostEntry instance.

public:
    static void DoGetHostEntry(IPAddress^ address)
    {
        IPHostEntry^ host = Dns::GetHostEntry(address);

        Console::WriteLine("GetHostEntry({0}) returns HostName: {1}", address->ToString(), host->HostName);
    }
public static void DoGetHostEntry(IPAddress address)
{
    IPHostEntry host = Dns.GetHostEntry(address);

    Console.WriteLine($"GetHostEntry({address}) returns HostName: {host.HostName}");
}
Public Sub DoGetHostEntry(address As IPAddress)

    Dim host as IPHostEntry = Dns.GetHostEntry(address)

    Console.WriteLine($"GetHostEntry({address}) returns HostName: {host.HostName}")

End Sub

注釈

GetHostEntryメソッドは、IP アドレスおよび IP アドレスに関連付けられているエイリアスを DNS サーバーを照会します。The GetHostEntry method queries a DNS server for the IP addresses and aliases associated with an IP address.

IPv6 アドレスがの結果からフィルター処理、GetHostEntryメソッド、ローカル コンピューターに IPv6 がインストールされていない場合。IPv6 addresses are filtered from the results of the GetHostEntry method if the local computer does not have IPv6 installed. その結果、空を取得することはIPHostEntryインスタンス IPv6 結果が利用可能であった場合のみ、addressパラメーター。As a result, it is possible to get back an empty IPHostEntry instance if only IPv6 results were available for the address parameter.

Aliasesのプロパティ、IPHostEntry返されるインスタンスが、このメソッドによって設定されていないと、常に空になります。The Aliases property of the IPHostEntry instance returned is not populated by this method and will always be empty.

注意

このメンバーは、アプリケーションでネットワークのトレースを有効にすると、トレース情報を出力します。This member emits trace information when you enable network tracing in your application. 詳細については、次を参照してください。ネットワークのトレースを .NET Framework でします。For more information, see Network Tracing in the .NET Framework.

セキュリティ

DnsPermission
DNS 情報にアクセスします。for accessing DNS information. 関連付けられた列挙体。 UnrestrictedAssociated enumeration: Unrestricted

GetHostEntry(String) GetHostEntry(String) GetHostEntry(String) GetHostEntry(String)

ホスト名または IP アドレスを IPHostEntry インスタンスに解決します。Resolves a host name or IP address to an IPHostEntry instance.

public:
 static System::Net::IPHostEntry ^ GetHostEntry(System::String ^ hostNameOrAddress);
public static System.Net.IPHostEntry GetHostEntry (string hostNameOrAddress);
static member GetHostEntry : string -> System.Net.IPHostEntry
Public Shared Function GetHostEntry (hostNameOrAddress As String) As IPHostEntry

パラメーター

hostNameOrAddress
String String String String

解決するホスト名または IP アドレス。The host name or IP address to resolve.

戻り値

hostNameOrAddress で指定するホストについてのアドレス情報を格納する IPHostEntry インスタンス。An IPHostEntry instance that contains address information about the host specified in hostNameOrAddress.

例外

hostNameOrAddress パラメーターが null です。The hostNameOrAddress parameter is null.

hostNameOrAddress パラメーターの長さが 255 文字を超えています。The length of hostNameOrAddress parameter is greater than 255 characters.

hostNameOrAddress パラメーターを解決するときにエラーが発生しました。An error was encountered when resolving the hostNameOrAddress parameter.

hostNameOrAddress パラメーターの IP アドレスが無効です。The hostNameOrAddress parameter is an invalid IP address.

次の例では、GetHostEntryメソッドを解決するには、IP アドレスをIPHostEntryインスタンス。The following example uses the GetHostEntry method to resolve an IP address to an IPHostEntry instance.

public:
    static void DoGetHostEntry(String^ hostname)
    {
        IPHostEntry^ host = Dns::GetHostEntry(hostname);

        Console::WriteLine("GetHostEntry({0}) returns:", host->HostName);

        for (int i = 0; i < host->AddressList->Length; i++)
        {
            Console::WriteLine("    {0}", host->AddressList[i]->ToString());			
        }
    }
public static void DoGetHostEntry(string hostname)
{
    IPHostEntry host = Dns.GetHostEntry(hostname);

    Console.WriteLine($"GetHostEntry({hostname}) returns:");

    foreach (IPAddress address in host.AddressList)
    {
        Console.WriteLine($"    {address}");
    }
}
Public Sub DoGetHostEntry(hostName As String)

    Dim host as IPHostEntry = Dns.GetHostEntry(hostname)

    Console.WriteLine($"GetHostEntry({hostname}) returns:")

    Dim addresses As IPAddress() = host.AddressList

    Dim index As Integer
    For index = 0 To addresses.Length - 1
        Console.WriteLine($"    {addresses(index)}")
    Next index

End Sub

注釈

GetHostEntryメソッドは、ホスト名に関連付けられている IP アドレスまたは IP アドレスの DNS サーバーを照会します。The GetHostEntry method queries a DNS server for the IP address that is associated with a host name or IP address.

として空の文字列が渡された場合、hostNameOrAddress引数をこのメソッドは、ローカル ホストの IPv4 と IPv6 のアドレスを返します。If an empty string is passed as the hostNameOrAddress argument, then this method returns the IPv4 and IPv6 addresses of the local host.

ホスト名が見つからない場合、 SocketException 11001 (Windows Sockets エラー WSAHOST_NOT_FOUND) の値を持つ例外が返されます。If the host name could not be found, the SocketException exception is returned with a value of 11001 (Windows Sockets error WSAHOST_NOT_FOUND). この例外は、DNS サーバーが応答しない場合に返されることができます。This exception can be returned if the DNS server does not respond. この例外は、名前は、正式なホスト名またはエイリアス、またはクエリ対象のデータベースで見つからない場合にも返されます。This exception can also be returned if the name is not an official host name or alias, or it cannot be found in the database(s) being queried.

ArgumentException場合にも例外が返されます、hostNameOrAddressパラメーターが含まれるAnyまたはIPv6Anyします。The ArgumentException exception is also returned if the hostNameOrAddress parameter contains Any or IPv6Any.

GetHostEntry IP のリテラル文字列が渡された場合は、メソッドで、hostNameOrAddressアプリケーションが、パラメーター、IPHostEntryプロパティ セットのすべてのインスタンスが返されます。The GetHostEntry method assumes that if an IP literal string is passed in the hostNameOrAddress parameter that the application wants an IPHostEntry instance returned with all of the properties set. これらのプロパティを含める、 AddressListAliases、およびHostNameします。These properties include the AddressList, Aliases, and HostName. その結果の実装、GetHostEntryメソッドは、IP の文字列リテラルが渡されるときに次の動作を示します。As a result, the implementation of the GetHostEntry method exhibits the following behavior when an IP string literal is passed:

  1. メソッドは、アドレスを解析しようとします。The method tries to parse the address. 場合、hostNameOrAddressパラメーターにリテラルには、有効な IP 文字列が含まれていますし、最初のフェーズが成功するとします。If the hostNameOrAddress parameter contains a legal IP string literal, then the first phase succeeds.

  2. IP 文字列リテラルの IP アドレスを使用して逆引き参照がホスト名を取得しようとしています。A reverse lookup using the IP address of the IP string literal is attempted to obtain the host name. この結果として設定されて、HostNameプロパティ。This result is set as the HostName property.

  3. この逆引き参照からのホスト名はすべて、可能な IP アドレスに関連付けられた名前および設定の取得にもう一度使用、AddressListプロパティ。The host name from this reverse lookup is used again to obtain all the possible IP addresses associated with the name and set as the AddressList property.

IPv4 の文字列リテラル、上記の 3 つすべての手順が成功があります。For an IPv4 string literal, all three steps above may succeed. 実際に返される別のホストに属している IPv4 アドレスの DNS レコード古い可能性があります。But it is possible for a stale DNS record for an IPv4 address that actually belongs to a different host to be returned. 手順 3 と失敗し、(は、IPv4 アドレスの DNS PTR レコードが IPv4 アドレスの DNS A レコードがありません) 例外をスローする可能性があります。This may cause step #3 to fail and throw an exception (there is a DNS PTR record for the IPv4 address, but no DNS A record for the IPv4 address).

Ipv6、上記の手順 2 が失敗する、ため、ほとんどの IPv6 環境で IPv6 アドレスの逆引き (PTR) レコードを登録しないでください。For IPv6, step #2 above may fail, since most IPv6 deployments do not register the reverse (PTR) record for an IPv6 address. このメソッドが文字列を返します、IPv6 で完全修飾ドメイン (FQDN) のホスト名としてリテラルように、HostNameプロパティ。So this method may return the string IPv6 literal as the fully-qualified domain (FQDN) host name in the HostName property.

GetHostAddressesメソッドには IP リテラルに関して動作が異なります。The GetHostAddresses method has different behavior with respect to IP literals. 1 つ目のステップが成功した場合 (正常に解析、IP アドレスとして)、アドレスがすぐに、結果として返されることです。If step #1 above succeeds (it successfully parses as an IP address), that address is immediately returned as the result. 逆引き参照で試行することはありません。There is no attempt at a reverse lookup.

IPv6 アドレスがの結果からフィルター処理、GetHostEntryメソッド、ローカル コンピューターに IPv6 がインストールされていない場合。IPv6 addresses are filtered from the results of the GetHostEntry method if the local computer does not have IPv6 installed. その結果、空を取得することはIPHostEntryIPv6 の使用可能な場合の結果だけをインスタンス化、 hostNameOrAddress.parameter します。As a result, it is possible to get back an empty IPHostEntry instance if only IPv6 results where available for the hostNameOrAddress.parameter.

Aliasesのプロパティ、IPHostEntry返されるインスタンスが、このメソッドによって設定されていないと、常に空になります。The Aliases property of the IPHostEntry instance returned is not populated by this method and will always be empty.

注意

このメンバーは、アプリケーションでネットワークのトレースを有効にすると、トレース情報を出力します。This member emits trace information when you enable network tracing in your application. 詳細については、次を参照してください。ネットワークのトレースを .NET Framework でします。For more information, see Network Tracing in the .NET Framework.

セキュリティ

DnsPermission
DNS 情報にアクセスします。for accessing DNS information. 関連付けられた列挙体。 UnrestrictedAssociated enumeration: Unrestricted

適用対象