Partager via


Dns.GetHostEntryAsync Méthode

Définition

Résout un nom d’hôte ou une adresse IP en une IPHostEntry instance en tant qu’opération asynchrone.

Surcharges

Nom Description
GetHostEntryAsync(IPAddress)

Résout une adresse IP en une IPHostEntry instance en tant qu’opération asynchrone.

GetHostEntryAsync(String)

Résout un nom d’hôte ou une adresse IP en une IPHostEntry instance en tant qu’opération asynchrone.

GetHostEntryAsync(String, CancellationToken)

Résout un nom d’hôte ou une adresse IP en une IPHostEntry instance en tant qu’opération asynchrone.

GetHostEntryAsync(String, AddressFamily, CancellationToken)

Résout un nom d’hôte ou une adresse IP en une IPHostEntry instance en tant qu’opération asynchrone.

GetHostEntryAsync(IPAddress)

Source:
Dns.cs
Source:
Dns.cs
Source:
Dns.cs
Source:
Dns.cs
Source:
Dns.cs

Résout une adresse IP en une IPHostEntry instance en tant qu’opération asynchrone.

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)

Paramètres

address
IPAddress

Une adresse IP.

Retours

Objet de tâche représentant l’opération asynchrone. La Result propriété sur l’objet de tâche retourne une IPHostEntry instance qui contient des informations d’adresse sur l’hôte spécifié dans address.

Exceptions

address a la valeur null.

Une erreur est rencontrée lors de la résolution address.

address est une adresse IP non valide.

Remarques

Cette opération ne bloque pas. L’objet retourné Task<TResult> se termine une fois le address problème résolu.

Cette méthode interroge un serveur DNS pour les adresses IP et les alias associés à une adresse IP.

Les adresses IPv6 sont filtrées à partir des résultats de cette méthode si l’ordinateur local n’a pas installé IPv6. Par conséquent, il est possible de récupérer une instance vide IPHostEntry si seuls les résultats IPv6 sont disponibles pour le address paramètre.

La Aliases propriété de l’instance IPHostEntry retournée n’est pas remplie par cette méthode et sera toujours vide.

Note

Ce membre émet des informations de trace lorsque vous activez le suivi réseau dans votre application. Pour plus d’informations, consultez Suivi réseau dans .NET Framework.

Cette méthode stocke dans la tâche toutes les exceptions non-utilisation que l’équivalent synchrone de la méthode peut lever. Si une exception est stockée dans la tâche retournée, cette exception est levée lorsque la tâche est attendue. Les exceptions d’utilisation, telles que ArgumentException, sont toujours levées de façon synchrone. Pour les exceptions stockées, consultez les exceptions levées par GetHostEntry(IPAddress).

S’applique à

GetHostEntryAsync(String)

Source:
Dns.cs
Source:
Dns.cs
Source:
Dns.cs
Source:
Dns.cs
Source:
Dns.cs

Résout un nom d’hôte ou une adresse IP en une IPHostEntry instance en tant qu’opération asynchrone.

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)

Paramètres

hostNameOrAddress
String

Nom d’hôte ou adresse IP à résoudre.

Retours

Objet de tâche représentant l’opération asynchrone. La Result propriété sur l’objet de tâche retourne une IPHostEntry instance qui contient des informations d’adresse sur l’hôte spécifié dans hostNameOrAddress.

Exceptions

Le hostNameOrAddress paramètre est null.

La longueur du hostNameOrAddress paramètre est supérieure à 255 caractères.

Une erreur s’est produite lors de la résolution du hostNameOrAddress paramètre.

Le hostNameOrAddress paramètre est une adresse IP non valide.

Remarques

Cette opération ne bloque pas. L’objet retourné Task<TResult> se termine une fois le hostNameOrAddress problème résolu.

Cette méthode interroge un serveur DNS pour l’adresse IP associée à un nom d’hôte ou une adresse IP.

Si une chaîne vide est passée en tant qu’argument hostNameOrAddress , cette méthode retourne les adresses IPv4 et IPv6 de l’hôte local.

Si le nom d’hôte est introuvable, l’exception SocketException est retournée avec la valeur 11001 (erreur Windows Sockets WSAHOST_NOT_FOUND). Cette exception peut être retournée si le serveur DNS ne répond pas. Cette exception peut également être retournée si le nom n’est pas un nom d’hôte ou un alias officiel, ou qu’il est introuvable dans la ou les bases de données interrogées.

L’exception ArgumentException est également retournée si le hostNameOrAddress paramètre contient Any ou IPv6Any.

Cette méthode part du principe que si une chaîne littérale IP est passée dans le hostNameOrAddress paramètre que l’application souhaite qu’une IPHostEntry instance retournée avec toutes les propriétés définies. Ces propriétés incluent les AddressListpropriétés , Aliaseset HostName. Par conséquent, l’implémentation de cette méthode présente le comportement suivant lorsqu’un littéral de chaîne IP est passé :

  1. La méthode tente d’analyser l’adresse. Si le hostNameOrAddress paramètre contient un littéral de chaîne IP légale, la première phase réussit.

  2. Une recherche inversée à l’aide de l’adresse IP du littéral de chaîne IP est tentée d’obtenir le nom d’hôte. Ce résultat est défini comme propriété HostName .

  3. Le nom d’hôte de cette recherche inversée est utilisé à nouveau pour obtenir toutes les adresses IP possibles associées au nom et définir comme AddressList propriété.

Pour un littéral de chaîne IPv4, les trois étapes ci-dessus peuvent réussir. Mais il est possible qu’un enregistrement DNS obsolète pour une adresse IPv4 qui appartient réellement à un autre hôte soit retourné. Cela peut entraîner l’échec de l’étape 3 et la levée d’une exception (il existe un enregistrement PTR DNS pour l’adresse IPv4, mais aucun enregistrement DNS A pour l’adresse IPv4).

Pour IPv6, l’étape 2 ci-dessus peut échouer, car la plupart des déploiements IPv6 n’inscrivent pas l’enregistrement inverse (PTR) pour une adresse IPv6. Ainsi, cette méthode peut retourner le littéral IPv6 de chaîne en tant que nom d’hôte de domaine complet (FQDN) dans la HostName propriété.

La GetHostAddresses méthode a un comportement différent par rapport aux littéraux IP. Si l’étape 1 ci-dessus réussit (elle analyse correctement en tant qu’adresse IP), cette adresse est immédiatement retournée comme résultat. Il n’y a aucune tentative de recherche inversée.

Les adresses IPv6 sont filtrées à partir des résultats de cette méthode si l’ordinateur local n’a pas installé IPv6. Par conséquent, il est possible de récupérer une instance vide IPHostEntry si seuls les résultats IPv6 sont disponibles pour le hostNameOrAddressparamètre ..

La Aliases propriété de l’instance IPHostEntry retournée n’est pas remplie par cette méthode et sera toujours vide.

Cette méthode est implémentée à l’aide des API de résolution de noms du système d’exploitation sous-jacentes (telles que l’API Win32 getaddrinfo sur Windows et les API équivalentes sur d’autres plateformes). Si un hôte est décrit dans le hosts fichier, l’adresse IP ou les adresses qu’il y a sont retournées sans interroger le serveur DNS.

Note

Ce membre émet des informations de trace lorsque vous activez le suivi réseau dans votre application. Pour plus d’informations, consultez Suivi réseau dans .NET Framework.

Cette méthode stocke dans la tâche toutes les exceptions non-utilisation que l’équivalent synchrone de la méthode peut lever. Si une exception est stockée dans la tâche retournée, cette exception est levée lorsque la tâche est attendue. Les exceptions d’utilisation, telles que ArgumentException, sont toujours levées de façon synchrone. Pour les exceptions stockées, consultez les exceptions levées par GetHostEntry(String).

S’applique à

GetHostEntryAsync(String, CancellationToken)

Source:
Dns.cs
Source:
Dns.cs
Source:
Dns.cs
Source:
Dns.cs
Source:
Dns.cs

Résout un nom d’hôte ou une adresse IP en une IPHostEntry instance en tant qu’opération asynchrone.

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)

Paramètres

hostNameOrAddress
String

Nom d’hôte ou adresse IP à résoudre.

cancellationToken
CancellationToken

Un jeton d’annulation qui peut être utilisé pour signaler que l’opération asynchrone doit être annulée.

Retours

Objet de tâche représentant l’opération asynchrone. La Result propriété sur l’objet de tâche retourne une IPHostEntry instance qui contient les informations d’adresse sur l’hôte spécifié dans hostNameOrAddress.

Exceptions

Le jeton d’annulation a été annulé. Cette exception est stockée dans la tâche retournée.

Remarques

Cette méthode stocke dans la tâche toutes les exceptions non-utilisation que l’équivalent synchrone de la méthode peut lever. Si une exception est stockée dans la tâche retournée, cette exception est levée lorsque la tâche est attendue. Les exceptions d’utilisation, telles que ArgumentException, sont toujours levées de façon synchrone. Pour les exceptions stockées, consultez les exceptions levées par GetHostEntry(String).

S’applique à

GetHostEntryAsync(String, AddressFamily, CancellationToken)

Source:
Dns.cs
Source:
Dns.cs
Source:
Dns.cs
Source:
Dns.cs
Source:
Dns.cs

Résout un nom d’hôte ou une adresse IP en une IPHostEntry instance en tant qu’opération asynchrone.

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)

Paramètres

hostNameOrAddress
String

Nom d’hôte ou adresse IP à résoudre.

family
AddressFamily

Famille d’adresses pour laquelle les adresses IP doivent être récupérées. Si Unspecified, récupérez toutes les adresses IP indépendamment de la famille d’adresses.

cancellationToken
CancellationToken

Un jeton d’annulation qui peut être utilisé pour signaler que l’opération asynchrone doit être annulée.

Retours

Objet de tâche représentant l’opération asynchrone. La Result propriété sur l’objet de tâche retourne une IPHostEntry instance qui contient les informations d’adresse sur l’hôte spécifié dans hostNameOrAddress.

Exceptions

Le jeton d’annulation a été annulé. Cette exception est stockée dans la tâche retournée.

Remarques

Cette méthode stocke dans la tâche toutes les exceptions non-utilisation que l’équivalent synchrone de la méthode peut lever. Si une exception est stockée dans la tâche retournée, cette exception est levée lorsque la tâche est attendue. Les exceptions d’utilisation, telles que ArgumentException, sont toujours levées de façon synchrone. Pour les exceptions stockées, consultez les exceptions levées par GetHostEntry(String, AddressFamily).

S’applique à