Dns.GetHostEntryAsync メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
ホスト名または IP アドレスを非同期操作として IPHostEntry インスタンスに解決します。
オーバーロード
| 名前 | 説明 |
|---|---|
| GetHostEntryAsync(IPAddress) |
IP アドレスを非同期操作として IPHostEntry インスタンスに解決します。 |
| GetHostEntryAsync(String) |
ホスト名または IP アドレスを非同期操作として IPHostEntry インスタンスに解決します。 |
| GetHostEntryAsync(String, CancellationToken) |
ホスト名または IP アドレスを非同期操作として IPHostEntry インスタンスに解決します。 |
| GetHostEntryAsync(String, AddressFamily, CancellationToken) |
ホスト名または IP アドレスを非同期操作として IPHostEntry インスタンスに解決します。 |
GetHostEntryAsync(IPAddress)
- ソース:
- Dns.cs
- ソース:
- Dns.cs
- ソース:
- Dns.cs
- ソース:
- Dns.cs
- ソース:
- Dns.cs
IP アドレスを非同期操作として IPHostEntry インスタンスに解決します。
public:
static System::Threading::Tasks::Task<System::Net::IPHostEntry ^> ^ GetHostEntryAsync(System::Net::IPAddress ^ address);
public static System.Threading.Tasks.Task<System.Net.IPHostEntry> GetHostEntryAsync(System.Net.IPAddress address);
static member GetHostEntryAsync : System.Net.IPAddress -> System.Threading.Tasks.Task<System.Net.IPHostEntry>
Public Shared Function GetHostEntryAsync (address As IPAddress) As Task(Of IPHostEntry)
パラメーター
- address
- IPAddress
IP アドレス。
戻り値
非同期操作を表すタスク オブジェクト。 タスク オブジェクトの Result プロパティは、addressで指定されたホストに関するアドレス情報を含むIPHostEntry インスタンスを返します。
例外
address は nullです。
addressを解決するときにエラーが発生しました。
address が無効な IP アドレスです。
注釈
この操作はブロックされません。 返された Task<TResult> オブジェクトは、 address が解決された後に完了します。
このメソッドは、DNS サーバーに対して、IP アドレスに関連付けられている IP アドレスとエイリアスを照会します。
ローカル コンピューターに IPv6 がインストールされていない場合、IPv6 アドレスはこのメソッドの結果からフィルター処理されます。 その結果、address パラメーターで使用可能な場合は、IPv6 のみが結果として得られる場合は、空の IPHostEntry インスタンスを返すことができます。
返されるIPHostEntry インスタンスのAliases プロパティは、このメソッドによって設定されず、常に空になります。
注
このメンバーは、アプリケーションでネットワーク トレースを有効にすると、トレース情報を出力します。 詳細については、「 .NET Framework のネットワーク トレース」を参照してください。
このメソッドは、メソッドの同期的な例外がスローできるすべての非使用例外を返すタスクに格納します。 返されたタスクに例外が格納されている場合、その例外はタスクが待機しているときにスローされます。 ArgumentException などの使用に関する例外は、引き続き同期的にスローされます。 格納されている例外については、 GetHostEntry(IPAddress)によってスローされる例外を参照してください。
適用対象
GetHostEntryAsync(String)
- ソース:
- Dns.cs
- ソース:
- Dns.cs
- ソース:
- Dns.cs
- ソース:
- Dns.cs
- ソース:
- Dns.cs
ホスト名または IP アドレスを非同期操作として IPHostEntry インスタンスに解決します。
public:
static System::Threading::Tasks::Task<System::Net::IPHostEntry ^> ^ GetHostEntryAsync(System::String ^ hostNameOrAddress);
public static System.Threading.Tasks.Task<System.Net.IPHostEntry> GetHostEntryAsync(string hostNameOrAddress);
static member GetHostEntryAsync : string -> System.Threading.Tasks.Task<System.Net.IPHostEntry>
Public Shared Function GetHostEntryAsync (hostNameOrAddress As String) As Task(Of IPHostEntry)
パラメーター
- hostNameOrAddress
- String
解決するホスト名または IP アドレス。
戻り値
非同期操作を表すタスク オブジェクト。 タスク オブジェクトの Result プロパティは、hostNameOrAddressで指定されたホストに関するアドレス情報を含むIPHostEntry インスタンスを返します。
例外
hostNameOrAddress パラメーターはnull。
hostNameOrAddressパラメーターの長さが 255 文字を超えています。
hostNameOrAddress パラメーターを解決するときにエラーが発生しました。
hostNameOrAddress パラメーターが無効な IP アドレスです。
注釈
この操作はブロックされません。 返された Task<TResult> オブジェクトは、 hostNameOrAddress が解決された後に完了します。
このメソッドは、ホスト名または IP アドレスに関連付けられている IP アドレスを DNS サーバーに照会します。
空の文字列が hostNameOrAddress 引数として渡された場合、このメソッドはローカル ホストの IPv4 アドレスと IPv6 アドレスを返します。
ホスト名が見つからなかった場合は、 SocketException 例外の値が 11001 (Windows ソケット エラー WSAHOST_NOT_FOUND) で返されます。 この例外は、DNS サーバーが応答しない場合に返される可能性があります。 この例外は、名前が公式のホスト名またはエイリアスでない場合、またはクエリ対象のデータベースで見つからない場合にも返されます。
hostNameOrAddress パラメーターにAnyまたはIPv6Anyが含まれている場合は、ArgumentException例外も返されます。
このメソッドは、IP リテラル文字列が hostNameOrAddress パラメーターに渡された場合、アプリケーションがすべてのプロパティ セットで IPHostEntry インスタンスを返す必要があることを前提としています。 これらのプロパティには、 AddressList、 Aliases、および HostNameが含まれます。 その結果、IP 文字列リテラルが渡されると、このメソッドの実装は次の動作を示します。
このメソッドはアドレスの解析を試みます。
hostNameOrAddressパラメーターに有効な IP 文字列リテラルが含まれている場合、最初のフェーズは成功します。IP 文字列リテラルの IP アドレスを使用した逆引き参照が、ホスト名の取得を試みます。 この結果は、 HostName プロパティとして設定されます。
この逆引き参照のホスト名を再度使用して、名前に関連付けられた使用可能なすべての IP アドレスを取得し、 AddressList プロパティとして設定します。
IPv4 文字列リテラルの場合、上記の 3 つの手順はすべて成功する可能性があります。 ただし、実際に別のホストに属している IPv4 アドレスの古い DNS レコードが返される可能性があります。 これにより、手順 3 でエラーが発生し、例外がスローされる可能性があります (IPv4 アドレスには DNS PTR レコードがありますが、IPv4 アドレスの DNS A レコードはありません)。
IPv6 の場合、ほとんどの IPv6 デプロイでは IPv6 アドレスの逆引き (PTR) レコードが登録されないため、上記の手順 2 が失敗する可能性があります。 そのため、このメソッドは、 HostName プロパティの完全修飾ドメイン (FQDN) ホスト名として文字列 IPv6 リテラルを返す場合があります。
GetHostAddressesメソッドは、IP リテラルに関して動作が異なります。 上記の手順 1 で成功した場合 (IP アドレスとして正常に解析されます)、そのアドレスは結果としてすぐに返されます。 逆引き参照は試行されません。
ローカル コンピューターに IPv6 がインストールされていない場合、IPv6 アドレスはこのメソッドの結果からフィルター処理されます。 その結果、hostNameOrAddress.parameter で使用可能な場合は、IPv6 のみが結果として得られる場合は、空のIPHostEntry インスタンスを取得できます。
返されるIPHostEntry インスタンスのAliases プロパティは、このメソッドによって設定されず、常に空になります。
このメソッドは、基になるオペレーティング システムの名前解決 API (Windows の Win32 API getaddrinfo、他のプラットフォームの同等の API など) を使用して実装されます。
hosts ファイルにホストが記述されている場合、DNS サーバーに対してクエリを実行せずに、そこに存在する IP アドレスが返されます。
注
このメンバーは、アプリケーションでネットワーク トレースを有効にすると、トレース情報を出力します。 詳細については、「 .NET Framework のネットワーク トレース」を参照してください。
このメソッドは、メソッドの同期的な例外がスローできるすべての非使用例外を返すタスクに格納します。 返されたタスクに例外が格納されている場合、その例外はタスクが待機しているときにスローされます。 ArgumentException などの使用に関する例外は、引き続き同期的にスローされます。 格納されている例外については、 GetHostEntry(String)によってスローされる例外を参照してください。
適用対象
GetHostEntryAsync(String, CancellationToken)
- ソース:
- Dns.cs
- ソース:
- Dns.cs
- ソース:
- Dns.cs
- ソース:
- Dns.cs
- ソース:
- Dns.cs
ホスト名または IP アドレスを非同期操作として IPHostEntry インスタンスに解決します。
public:
static System::Threading::Tasks::Task<System::Net::IPHostEntry ^> ^ GetHostEntryAsync(System::String ^ hostNameOrAddress, System::Threading::CancellationToken cancellationToken);
public static System.Threading.Tasks.Task<System.Net.IPHostEntry> GetHostEntryAsync(string hostNameOrAddress, System.Threading.CancellationToken cancellationToken);
static member GetHostEntryAsync : string * System.Threading.CancellationToken -> System.Threading.Tasks.Task<System.Net.IPHostEntry>
Public Shared Function GetHostEntryAsync (hostNameOrAddress As String, cancellationToken As CancellationToken) As Task(Of IPHostEntry)
パラメーター
- hostNameOrAddress
- String
解決するホスト名または IP アドレス。
- cancellationToken
- CancellationToken
非同期操作の通知に使用できるキャンセル トークンを取り消す必要があります。
戻り値
非同期操作を表すタスク オブジェクト。 タスク オブジェクトの Result プロパティは、hostNameOrAddressで指定されたホストに関するアドレス情報を含むIPHostEntry インスタンスを返します。
例外
キャンセル トークンが取り消されました。 この例外は、返されたタスクに格納されます。
注釈
このメソッドは、メソッドの同期的な例外がスローできるすべての非使用例外を返すタスクに格納します。 返されたタスクに例外が格納されている場合、その例外はタスクが待機しているときにスローされます。 ArgumentException などの使用に関する例外は、引き続き同期的にスローされます。 格納されている例外については、 GetHostEntry(String)によってスローされる例外を参照してください。
適用対象
GetHostEntryAsync(String, AddressFamily, CancellationToken)
- ソース:
- Dns.cs
- ソース:
- Dns.cs
- ソース:
- Dns.cs
- ソース:
- Dns.cs
- ソース:
- Dns.cs
ホスト名または IP アドレスを非同期操作として IPHostEntry インスタンスに解決します。
public static System.Threading.Tasks.Task<System.Net.IPHostEntry> GetHostEntryAsync(string hostNameOrAddress, System.Net.Sockets.AddressFamily family, System.Threading.CancellationToken cancellationToken = default);
static member GetHostEntryAsync : string * System.Net.Sockets.AddressFamily * System.Threading.CancellationToken -> System.Threading.Tasks.Task<System.Net.IPHostEntry>
Public Shared Function GetHostEntryAsync (hostNameOrAddress As String, family As AddressFamily, Optional cancellationToken As CancellationToken = Nothing) As Task(Of IPHostEntry)
パラメーター
- hostNameOrAddress
- String
解決するホスト名または IP アドレス。
- family
- AddressFamily
IP を取得する必要があるアドレス ファミリ。 Unspecified場合は、アドレス ファミリに関係なくすべての IP を取得します。
- cancellationToken
- CancellationToken
非同期操作の通知に使用できるキャンセル トークンを取り消す必要があります。
戻り値
非同期操作を表すタスク オブジェクト。 タスク オブジェクトの Result プロパティは、hostNameOrAddressで指定されたホストに関するアドレス情報を含むIPHostEntry インスタンスを返します。
例外
キャンセル トークンが取り消されました。 この例外は、返されたタスクに格納されます。
注釈
このメソッドは、メソッドの同期的な例外がスローできるすべての非使用例外を返すタスクに格納します。 返されたタスクに例外が格納されている場合、その例外はタスクが待機しているときにスローされます。 ArgumentException などの使用に関する例外は、引き続き同期的にスローされます。 格納されている例外については、 GetHostEntry(String, AddressFamily)によってスローされる例外を参照してください。