Dns.GetHostAddresses 方法

定義

多載

GetHostAddresses(String)

傳回指定之主機的網際網路通訊協定 (Internet Protocol,IP) 位址。

GetHostAddresses(String, AddressFamily)

傳回指定之主機的網際網路通訊協定 (Internet Protocol,IP) 位址。

GetHostAddresses(String)

來源:
Dns.cs
來源:
Dns.cs
來源:
Dns.cs

傳回指定之主機的網際網路通訊協定 (Internet Protocol,IP) 位址。

C#
public static System.Net.IPAddress[] GetHostAddresses(string hostNameOrAddress);

參數

hostNameOrAddress
String

要解析的主機名稱或 IP 位址。

傳回

IPAddress 類型的陣列,保留 hostNameOrAddress 參數所指定之主機的 IP 位址。

例外狀況

hostNameOrAddressnull

hostNameOrAddress 的長度大於 255 個字元。

當解析 hostNameOrAddress 時,發生錯誤。

hostNameOrAddress 為無效的 IP 位址。

範例

下列程式代碼範例會使用 方法, GetHostAddresses 將IP位址解析為類型的 IPAddress陣列。

C#
public static void DoGetHostAddresses(string hostname)
{
    IPAddress[] addresses = Dns.GetHostAddresses(hostname);

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

    foreach (IPAddress address in addresses)
    {
        Console.WriteLine($"    {address}");
    }
}

備註

方法 GetHostAddresses 會查詢 DNS 子系統,以取得與主機名相關聯的 IP 位址。 如果 hostNameOrAddress 是IP位址,則會傳回此位址,而不查詢 DNS 伺服器。

如果將空字串當做 hostNameOrAddress 自變數傳遞,則此方法會傳回本機主機的 IPv4 和 IPv6 位址。

如果本機計算機未安裝 IPv6,則會從 方法的結果 GetHostAddresses 篩選 IPv6 位址。 因此,如果只有 IPv6 結果可供 參數使用,就可以傳回空 IPAddresshostNameOrAddress 實例。

此方法是使用基礎操作系統的名稱解析 API 來實作, (例如 Windows 上的 Win32 API getaddrinfo,以及其他平臺上的對等 API) 。 如果檔案中 hosts 描述主機,則會傳回IP位址或位址,而不需查詢 DNS 伺服器。

備註

當您在應用程式中啟用網路追蹤時,此成員會發出追蹤資訊。 如需詳細資訊,請參閱 .NET Framework 中的網路追蹤

適用於

.NET 10 和其他版本
產品 版本
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

GetHostAddresses(String, AddressFamily)

來源:
Dns.cs
來源:
Dns.cs
來源:
Dns.cs

傳回指定之主機的網際網路通訊協定 (Internet Protocol,IP) 位址。

C#
public static System.Net.IPAddress[] GetHostAddresses(string hostNameOrAddress, System.Net.Sockets.AddressFamily family);

參數

hostNameOrAddress
String

要解析的主機名稱或 IP 位址。

family
AddressFamily

應擷取IP的位址系列。 如果 Unspecified為 ,則擷取所有IP,而不論位址系列為何。

傳回

IPAddress 類型的陣列,保留 hostNameOrAddress 參數所指定之主機的 IP 位址。

適用於

.NET 10 和其他版本
產品 版本
.NET 6, 7, 8, 9, 10