Dns.GetHostEntryAsync Méthode

Définition

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

Surcharges

GetHostEntryAsync(IPAddress)

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

GetHostEntryAsync(String)

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

GetHostEntryAsync(String, CancellationToken)

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

GetHostEntryAsync(String, AddressFamily, CancellationToken)

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

GetHostEntryAsync(IPAddress)

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

Résout une adresse IP en instance de IPHostEntry 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

Adresse IP.

Retours

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

Exceptions

address a la valeur null.

Une erreur s'est produite lors de la résolution de address.

address est une adresse IP non valide.

Remarques

Cette opération ne se bloque pas. L’objet retourné Task<TResult> se termine une fois que le address a été 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 IPv6 n’est pas installé sur l’ordinateur local. Par conséquent, il est possible de récupérer un instance vide IPHostEntry si les résultats IPv6 sont uniquement disponibles pour le address paramètre.

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

Notes

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 de 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 sera levée lorsque la tâche est attendue. Les exceptions d’utilisation, telles que ArgumentException, sont toujours levées de manière synchrone. Pour connaître 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

Résout un nom d'hôte ou une adresse IP en instance de IPHostEntry 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 de l'hôte ou adresse IP à résoudre.

Retours

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

Exceptions

Le paramètre hostNameOrAddress a la valeur null.

Le paramètre hostNameOrAddress comporte plus de 255 caractères.

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

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

Remarques

Cette opération ne se bloque pas. L’objet retourné Task<TResult> se termine une fois que le hostNameOrAddress a été 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 des sockets Windows 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 s’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 suppose que si une chaîne littérale IP est passée dans le paramètre, l’application hostNameOrAddress souhaite qu’un IPHostEntry instance retourné avec toutes les propriétés définies. Ces propriétés incluent , AddressListAliaseset 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 pour obtenir le nom d’hôte. Ce résultat est défini en tant que HostName propriété .

  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 en fait à un autre hôte soit retourné. Cela peut entraîner l’échec de l’étape 3 et lever une exception (il existe un enregistrement DNS PTR pour l’adresse IPv4, mais pas d’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. Par conséquent, cette méthode peut renvoyer le littéral IPv6 de chaîne comme nom d’hôte de domaine complet (FQDN) dans la HostName propriété.

La GetHostAddresses méthode a un comportement différent en ce qui concerne les littéraux IP. Si l’étape n°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 IPv6 n’est pas installé sur l’ordinateur local. Par conséquent, il est possible de récupérer un instance vide IPHostEntry si uniquement les résultats IPv6 sont disponibles pour le hostNameOrAddressparamètre ..

La Aliases propriété du IPHostEntry instance retourné 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-jacent (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 contient seront retournées sans interroger le serveur DNS.

Notes

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 de 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 sera levée lorsque la tâche est attendue. Les exceptions d’utilisation, telles que ArgumentException, sont toujours levées de manière synchrone. Pour connaître 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

Résout un nom d'hôte ou une adresse IP en instance de IPHostEntry 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 de l'hôte ou adresse IP à résoudre.

cancellationToken
CancellationToken

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 de 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 sera levée lorsque la tâche est attendue. Les exceptions d’utilisation, telles que ArgumentException, sont toujours levées de manière synchrone. Pour connaître 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

Résout un nom d'hôte ou une adresse IP en instance de IPHostEntry 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 de l'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, quelle que soit la famille d’adresses.

cancellationToken
CancellationToken

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 de 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 sera levée lorsque la tâche est attendue. Les exceptions d’utilisation, telles que ArgumentException, sont toujours levées de manière synchrone. Pour connaître les exceptions stockées, consultez les exceptions levées par GetHostEntry(String, AddressFamily).

S’applique à