Dns.GetHostAddresses(String) メソッド

定義

指定したホストのインターネット プロトコル (IP: Internet Protocol) アドレスを返します。Returns the Internet Protocol (IP) addresses for the specified host.

public:
 static cli::array <System::Net::IPAddress ^> ^ GetHostAddresses(System::String ^ hostNameOrAddress);
public static System.Net.IPAddress[] GetHostAddresses (string hostNameOrAddress);
static member GetHostAddresses : string -> System.Net.IPAddress[]
Public Shared Function GetHostAddresses (hostNameOrAddress As String) As IPAddress()

パラメーター

hostNameOrAddress
String

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

戻り値

IPAddress[]

hostNameOrAddress パラメーターで指定されたホストの IP アドレスを保持する IPAddress 型の配列。An array of type IPAddress that holds the IP addresses for the host that is specified by the hostNameOrAddress parameter.

例外

hostNameOrAddressnullです。hostNameOrAddress is null.

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

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

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

次のコード例では、メソッドを使用して、 GetHostAddresses IP アドレスを型の配列に解決し IPAddress ます。The following code example uses the GetHostAddresses method to resolve an IP address to an array of type IPAddress.

    // Determine the Internet Protocol(IP) addresses for a host.
public:
    static void DoGetHostAddress(String^ hostname)
    {
        array<IPAddress^>^ addresses;
        addresses = Dns::GetHostAddresses(hostname);

        Console::WriteLine("GetHostAddresses({0}) returns:", hostname);
        for each (IPAddress^ address in addresses)
        {
            Console::Write("{0} ", address);
        }
        Console::WriteLine("");
   }
public static void DoGetHostAddresses(string hostname)
{
    IPAddress[] addresses = Dns.GetHostAddresses(hostname);

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

    foreach (IPAddress address in addresses)
    {
        Console.WriteLine($"    {address}");
    }
}
Public Sub DoGetHostAddresses(hostName As String)

    Dim addresses As IPAddress() = Dns.GetHostAddresses(hostname)

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

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

End Sub

注釈

メソッドは、 GetHostAddresses ホスト名に関連付けられた IP アドレスを DNS サブシステムに照会します。The GetHostAddresses method queries the DNS subsystem for the IP addresses associated with a host name. hostNameOrAddressが IP アドレスの場合は、DNS サーバーにクエリを実行せずにこのアドレスが返されます。If hostNameOrAddress is an IP address, this address is returned without querying the DNS server.

引数として空の文字列が渡された場合 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.

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

このメソッドは、基になるオペレーティングシステムの名前解決 Api (Windows 上の Win32 API getaddrinfo、その他のプラットフォームで同等の Api など) を使用して実装されます。This method is implemented using the underlying operating system's name resolution APIs (such as the Win32 API getaddrinfo on Windows, and equivalent APIs on other platforms). ファイルにホストが記述されている場合は、 hosts DNS サーバーにクエリを実行せずに IP アドレスまたはアドレスが返されます。If a host is described in the hosts file, the IP address or addresses there will be returned without querying the DNS server.

注意

このメンバーは、アプリケーションでネットワークトレースを有効にするときにトレース情報を出力します。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.

適用対象