Dns.GetHostAddresses 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
多載
| 名稱 | Description |
|---|---|
| GetHostAddresses(String, AddressFamily) |
回傳指定主機的網際網路協定(IP)位址。 |
| GetHostAddresses(String) |
回傳指定主機的網際網路協定(IP)位址。 |
GetHostAddresses(String, AddressFamily)
- 來源:
- Dns.cs
- 來源:
- Dns.cs
- 來源:
- Dns.cs
- 來源:
- Dns.cs
- 來源:
- Dns.cs
回傳指定主機的網際網路協定(IP)位址。
public:
static cli::array <System::Net::IPAddress ^> ^ GetHostAddresses(System::String ^ hostNameOrAddress, System::Net::Sockets::AddressFamily family);
public static System.Net.IPAddress[] GetHostAddresses(string hostNameOrAddress, System.Net.Sockets.AddressFamily family);
static member GetHostAddresses : string * System.Net.Sockets.AddressFamily -> System.Net.IPAddress[]
Public Shared Function GetHostAddresses (hostNameOrAddress As String, family As AddressFamily) As IPAddress()
參數
- hostNameOrAddress
- String
要解析主機名稱或 IP 位址。
- family
- AddressFamily
應該取得哪些IP的IP地址家族。 若 Unspecified,則擷取所有 IP,不論位址家族為何。
傳回
一個類型的 IPAddress 陣列,儲存由 hostNameOrAddress 參數指定的主機的 IP 位址。
適用於
GetHostAddresses(String)
- 來源:
- Dns.cs
- 來源:
- Dns.cs
- 來源:
- Dns.cs
- 來源:
- Dns.cs
- 來源:
- Dns.cs
回傳指定主機的網際網路協定(IP)位址。
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 位址。
傳回
一個類型的 IPAddress 陣列,儲存由 hostNameOrAddress 參數指定的主機的 IP 位址。
例外狀況
hostNameOrAddress 是 null。
長度 hostNameOrAddress 超過 255 個字元。
當解析 hostNameOrAddress時會遇到錯誤。
hostNameOrAddress 是一個無效的 IP 位址。
範例
以下程式碼範例使用該 GetHostAddresses 方法將 IP 位址解析為型別 IPAddress為 的陣列。
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 方法會向 DNS 子系統查詢與主機名稱相關的 IP 位址。 如果 hostNameOrAddress 是 IP 位址,則會回傳此位址而不需查詢 DNS 伺服器。
若參數傳遞 hostNameOrAddress 空字串,則回傳本地主機的 IPv4 與 IPv6 位址。
如果本地電腦未安裝 IPv6,則 IPv6 位址會從方法結果 GetHostAddresses 中被過濾掉。 因此,若參數僅有 IPv6 結果,IPAddress則有可能回傳空hostNameOrAddress實例。
此方法透過底層作業系統的名稱解析 API(例如 Windows 上的 Win32 API getaddrinfo,以及其他平台上的等效 API)來實作。 若檔案中描述 hosts 了主機,該 IP 位址會在不查詢 DNS 伺服器的情況下被回傳。
Note
當您在應用程式中啟用網路追蹤時,該成員會發出追蹤資訊。 欲了解更多資訊,請參閱.NET框架中的網絡追蹤。