Résolution de noms des ressources dans les réseaux virtuels AzureName resolution for resources in Azure virtual networks

Selon la manière dont vous utilisez Azure pour héberger les solutions IaaS, PaaS et les solutions hybrides, vous pouvez être amené à configurer les machines virtuelles et d’autres ressources déployées sur un réseau virtuel pour qu’elles communiquent entre elles.Depending on how you use Azure to host IaaS, PaaS, and hybrid solutions, you might need to allow the virtual machines (VMs), and other resources deployed in a virtual network to communicate with each other. Même si vous pouvez activer la communication par le biais d’adresses IP, il est bien plus simple d’utiliser des noms dont vous vous souviendrez facilement et qui ne seront pas modifiés.Although you can enable communication by using IP addresses, it is much simpler to use names that can be easily remembered, and do not change.

Quand des ressources déployées sur des réseaux virtuels doivent résoudre des noms de domaine en adresses IP internes, elles peuvent utiliser l’une des deux méthodes suivantes :When resources deployed in virtual networks need to resolve domain names to internal IP addresses, they can use one of two methods:

Le type de résolution de noms que vous utilisez dépend de la manière dont vos ressources doivent communiquer entre elles.The type of name resolution you use depends on how your resources need to communicate with each other. Le tableau suivant montre des scénarios et les solutions de résolution de noms correspondantes :The following table illustrates scenarios and corresponding name resolution solutions:

Notes

Selon votre scénario, vous pouvez utiliser la fonctionnalité Azure DNS Private Zones, qui est actuellement disponible en préversion publique.Depending on your scenario, you may want to use the Azure DNS Private Zones feature, which is currently in Public Preview. Pour plus d’informations, consultez Utilisation d’Azure DNS pour les domaines privés.For more information, see Using Azure DNS for private domains.

ScénarioScenario SolutionSolution SuffixeSuffix
Résolution de noms entre des machines virtuelles situées dans le même réseau virtuel, ou entre des instances de rôle Azure Cloud Services situées dans le même service cloud.Name resolution between VMs located in the same virtual network, or Azure Cloud Services role instances in the same cloud service. Azure DNS Private Zones ou la résolution de noms fournie par AzureAzure DNS Private Zones or Azure-provided name resolution Nom d’hôte ou nom de domaine completHostname or FQDN
Résolution de noms entre des machines virtuelles situées dans différents réseaux virtuels ou entre des instances de rôle situées dans différents services cloud.Name resolution between VMs in different virtual networks or role instances in different cloud services. Azure DNS Private Zones ou des serveurs DNS gérés par le client qui transfèrent les requêtes entre les réseaux virtuels pour une résolution par Azure (proxy DNS).Azure DNS Private Zones or, Customer-managed DNS servers forwarding queries between virtual networks for resolution by Azure (DNS proxy). Consultez Résolution de noms à l’aide de votre propre serveur DNS.See Name resolution using your own DNS server. Nom de domaine complet uniquementFQDN only
Résolution de noms à partir d’Azure App Service (application web, fonction ou Bot) à l’aide de l’intégration au réseau virtuel pour les instances de rôle ou machines virtuelles dans le même réseau virtuel.Name resolution from an Azure App Service (Web App, Function, or Bot) using virtual network integration to role instances or VMs in the same virtual network. Serveurs DNS gérés par le client qui transfèrent les requêtes entre les réseaux virtuels pour une résolution par Azure (proxy DNS).Customer-managed DNS servers forwarding queries between virtual networks for resolution by Azure (DNS proxy). Consultez Résolution de noms à l’aide de votre propre serveur DNS.See Name resolution using your own DNS server. Nom de domaine complet uniquementFQDN only
Résolution de noms à partir d’App Service Web Apps vers des machines virtuelles dans le même réseau virtuel.Name resolution from App Service Web Apps to VMs in the same virtual network. Serveurs DNS gérés par le client qui transfèrent les requêtes entre les réseaux virtuels pour une résolution par Azure (proxy DNS).Customer-managed DNS servers forwarding queries between virtual networks for resolution by Azure (DNS proxy). Consultez Résolution de noms à l’aide de votre propre serveur DNS.See Name resolution using your own DNS server. Nom de domaine complet uniquementFQDN only
Résolution de noms à partir d’App Service Web Apps dans un réseau virtuel vers des machines virtuelles situées dans un réseau virtuel différent.Name resolution from App Service Web Apps in one virtual network to VMs in a different virtual network. Serveurs DNS gérés par le client qui transfèrent les requêtes entre les réseaux virtuels pour une résolution par Azure (proxy DNS).Customer-managed DNS servers forwarding queries between virtual networks for resolution by Azure (DNS proxy). Consultez Résolution de noms à l’aide de votre propre serveur DNS.See Name resolution using your own DNS server. Nom de domaine complet uniquementFQDN only
Résolution des noms de service et d’ordinateur locaux à partir des machines virtuelles ou des instances de rôle dans Azure.Resolution of on-premises computer and service names from VMs or role instances in Azure. Serveurs DNS gérés par le client (par exemple, contrôleur de domaine local, contrôleur de domaine en lecture seule local ou serveur DNS secondaire synchronisé via des transferts de zone).Customer-managed DNS servers (on-premises domain controller, local read-only domain controller, or a DNS secondary synced using zone transfers, for example). Consultez Résolution de noms à l’aide de votre propre serveur DNS.See Name resolution using your own DNS server. Nom de domaine complet uniquementFQDN only
Résolution de noms d’hôte Azure à partir d’ordinateurs locaux.Resolution of Azure hostnames from on-premises computers. Transférer les requêtes vers un serveur proxy DNS géré par le client dans le réseau virtuel correspondant ; le serveur proxy transfère les requêtes vers Azure en vue de la résolution.Forward queries to a customer-managed DNS proxy server in the corresponding virtual network, the proxy server forwards queries to Azure for resolution. Consultez Résolution de noms à l’aide de votre propre serveur DNS.See Name resolution using your own DNS server. Nom de domaine complet uniquementFQDN only
DNS inversé pour les adresses IP internes.Reverse DNS for internal IPs. Résolution de noms à l’aide de votre propre serveur DNS.Name resolution using your own DNS server. Non applicableNot applicable
Résolution de noms entre des machines virtuelles ou instances de rôle situées dans différents services cloud, et non dans un réseau virtuel.Name resolution between VMs or role instances located in different cloud services, not in a virtual network. Non applicable.Not applicable. La connectivité entre des machines virtuelles et des instances de rôle de différents services cloud n’est pas prise en charge en dehors d’un réseau virtuel.Connectivity between VMs and role instances in different cloud services is not supported outside a virtual network. Non applicableNot applicable

Résolution de noms dans AzureAzure-provided name resolution

Avec la résolution des noms DNS publics, Azure fournit la résolution de noms interne pour les machines virtuelles et les instances de rôle qui résident dans le même réseau virtuel ou service cloud.Along with resolution of public DNS names, Azure provides internal name resolution for VMs and role instances that reside within the same virtual network or cloud service. Les machines virtuelles et les instances d’un service cloud partagent le même suffixe DNS ; le nom d’hôte est donc suffisant.VMs and instances in a cloud service share the same DNS suffix, so the host name alone is sufficient. Toutefois, dans les réseaux virtuels déployés à l’aide du modèle de déploiement classique, les différents services cloud n’ont pas le même suffixe DNS.But in virtual networks deployed using the classic deployment model, different cloud services have different DNS suffixes. Dans ce cas, vous avez besoin du nom de domaine complet pour résoudre les noms des différents services cloud.In this situation, you need the FQDN to resolve names between different cloud services. Sur les réseaux virtuels déployés à l’aide du modèle de déploiement Azure Resource Manager, le suffixe DNS est le même sur tout le réseau virtuel ; le nom de domaine complet n’est donc pas nécessaire.In virtual networks deployed using the Azure Resource Manager deployment model, the DNS suffix is consistent across the virtual network, so the FQDN is not needed. Vous pouvez affecter des noms DNS aux machines virtuelles et aux interfaces réseau.DNS names can be assigned to both VMs and network interfaces. Bien que la résolution de noms fournie par Azure ne nécessite aucune configuration, elle ne convient pas à l’ensemble des scénarios de déploiement, comme expliqué dans le tableau précédent.Although Azure-provided name resolution does not require any configuration, it is not the appropriate choice for all deployment scenarios, as detailed in the previous table.

Notes

Quand vous utilisez des rôles de travail et web de services cloud, vous pouvez également accéder aux adresses IP internes des instances de rôle à l’aide de l’API REST de gestion des services Azure.When using cloud services web and worker roles, you can also access the internal IP addresses of role instances using the Azure Service Management REST API. Pour plus d’informations, consultez Référence de l’API REST de gestion des services.For more information, see the Service Management REST API Reference. L’adresse est basée sur le nom de rôle et le numéro d’instance.The address is based on the role name and instance number.

CaractéristiquesFeatures

La résolution de noms fournie par Azure présente les avantages suivants :Azure-provided name resolution includes the following features:

  • Simplicité d’utilisation.Ease of use. Aucune configuration n’est nécessaire.No configuration is required.
  • Haute disponibilité :High availability. Vous n’avez pas besoin de créer et de gérer les clusters de vos propres serveurs DNS.You don't need to create and manage clusters of your own DNS servers.
  • Vous pouvez utiliser le service conjointement à vos propres serveurs DNS pour résoudre les noms d’hôte locaux et Azure.You can use the service in conjunction with your own DNS servers, to resolve both on-premises and Azure host names.
  • Vous pouvez utiliser la résolution de noms entre les machines virtuelles et les instances de rôle du même service cloud, sans qu’un nom de domaine complet soit nécessaire.You can use name resolution between VMs and role instances within the same cloud service, without the need for an FQDN.
  • Vous pouvez utiliser la résolution de noms entre les machines virtuelles des réseaux virtuels qui utilisent le modèle de déploiement Azure Resource Manager, sans qu’un nom de domaine complet ne soit nécessaire.You can use name resolution between VMs in virtual networks that use the Azure Resource Manager deployment model, without need for an FQDN. Les réseaux virtuels du modèle de déploiement classique nécessitent un nom de domaine complet lors de la résolution de noms dans des services cloud différents.Virtual networks in the classic deployment model require an FQDN when you are resolving names in different cloud services.
  • Vous pouvez utiliser des noms d’hôte qui décrivent vos déploiements de façon plus appropriée, au lieu de noms générés automatiquement.You can use host names that best describe your deployments, rather than working with auto-generated names.

ConsidérationsConsiderations

Éléments à prendre en considération quand vous utilisez la résolution de noms fournie par Azure :Points to consider when you are using Azure-provided name resolution:

  • Le suffixe DNS créé par Azure ne peut pas être modifié.The Azure-created DNS suffix cannot be modified.
  • Vous ne pouvez pas enregistrer manuellement vos propres enregistrements.You cannot manually register your own records.
  • WINS et NetBIOS ne sont pas pris en charge.WINS and NetBIOS are not supported. Vous ne pouvez pas voir vos machines virtuelles dans l’Explorateur Windows.You cannot see your VMs in Windows Explorer.
  • Les noms d’hôte doivent être compatibles avec DNS.Host names must be DNS-compatible. Les noms doivent comporter uniquement les caractères 0-9, a-z et « - », et ils ne peuvent pas commencer ou se terminer par « - ».Names must use only 0-9, a-z, and '-', and cannot start or end with a '-'.
  • Le trafic de requêtes DNS est limité pour chaque machine virtuelle.DNS query traffic is throttled for each VM. Cette limitation ne devrait pas avoir d’incidence sur la plupart des applications.Throttling shouldn't impact most applications. Si la limitation de requêtes est respectée, assurez-vous que la mise en cache côté client est activée.If request throttling is observed, ensure that client-side caching is enabled. Pour plus d’informations, consultez Configuration du client DNS.For more information, see DNS client configuration.
  • Seules les machines virtuelles des 180 premiers services cloud sont inscrites pour chaque réseau virtuel dans un modèle de déploiement classique.Only VMs in the first 180 cloud services are registered for each virtual network in a classic deployment model. Cette limite ne s’applique pas aux réseaux virtuels d’Azure Resource Manager.This limit does not apply to virtual networks in Azure Resource Manager.
  • Adresse IP d’Azure DNS : 168.63.129.16.The Azure DNS IP address is 168.63.129.16. Il s’agit d’une adresse IP statique qui ne change pas.This is a static IP address and will not change.

Configuration du client DNSDNS client configuration

Cette section aborde la mise en cache côté client et les nouvelles tentatives côté client.This section covers client-side caching and client-side retries.

Mise en cache côté clientClient-side caching

Les requêtes DNS n’ont pas toutes besoin d’être envoyées sur le réseau.Not every DNS query needs to be sent across the network. La mise en cache côté client permet de réduire la latence et d’améliorer la résilience aux problèmes réseau en résolvant les requêtes DNS récurrentes à partir d’un cache local.Client-side caching helps reduce latency and improve resilience to network blips, by resolving recurring DNS queries from a local cache. Les enregistrements DNS ont une durée de vie qui permet au cache de les stocker aussi longtemps que possible sans impacter leur fraîcheur.DNS records contain a time-to-live (TTL) mechanism, which allows the cache to store the record for as long as possible without impacting record freshness. Pour cette raison, la mise en cache côté client convient à la plupart des situations.Thus, client-side caching is suitable for most situations.

Le client DNS Windows par défaut comprend un cache DNS intégré.The default Windows DNS client has a DNS cache built-in. Certaines distributions Linux n’incluent pas la mise en cache par défaut.Some Linux distributions do not include caching by default. Si vous ne disposez pas déjà d’un cache local, ajoutez un cache DNS à chaque machine virtuelle Linux.If you find that there isn't a local cache already, add a DNS cache to each Linux VM.

Il existe plusieurs packages de mise en cache DNS différents (par exemple, dnsmasq).There are a number of different DNS caching packages available (such as dnsmasq). Voici les étapes nécessaires à l’installation de dnsmasq sur les distributions les plus courantes :Here's how to install dnsmasq on the most common distributions:

  • Ubuntu (utilise resolvconf) :Ubuntu (uses resolvconf):
    • Installez le package dnsmasq avec sudo apt-get install dnsmasq.Install the dnsmasq package with sudo apt-get install dnsmasq.
  • SUSE (utilise netconf) :SUSE (uses netconf):
    • Installez le package dnsmasq avec sudo zypper install dnsmasq.Install the dnsmasq package with sudo zypper install dnsmasq.
    • Activez le service dnsmasq avec systemctl enable dnsmasq.service.Enable the dnsmasq service with systemctl enable dnsmasq.service.
    • Démarrez le service dnsmasq avec systemctl start dnsmasq.service.Start the dnsmasq service with systemctl start dnsmasq.service.
    • Modifiez /etc/sysconfig/network/config et remplacez NETCONFIG_DNS_FORWARDER="" par dnsmasq.Edit /etc/sysconfig/network/config, and change NETCONFIG_DNS_FORWARDER="" to dnsmasq.
    • Mettez à jour resolv.conf avec netconfig update pour définir le cache en tant que programme de résolution DNS local.Update resolv.conf with netconfig update, to set the cache as the local DNS resolver.
  • CentOS (utilise NetworkManager) :CentOS (uses NetworkManager):
    • Installez le package dnsmasq avec sudo yum install dnsmasq.Install the dnsmasq package with sudo yum install dnsmasq.
    • Activez le service dnsmasq avec systemctl enable dnsmasq.service.Enable the dnsmasq service with systemctl enable dnsmasq.service.
    • Démarrez le service dnsmasq avec systemctl start dnsmasq.service.Start the dnsmasq service with systemctl start dnsmasq.service.
    • Ajoutez prepend domain-name-servers 127.0.0.1; à /etc/dhclient-eth0.conf.Add prepend domain-name-servers 127.0.0.1; to /etc/dhclient-eth0.conf.
    • Redémarrez le service réseau avec service network restart pour définir le cache en tant que programme de résolution DNS local.Restart the network service with service network restart, to set the cache as the local DNS resolver.

Notes

Le package dnsmasq constitue l’un des nombreux caches DNS disponibles pour Linux.The dnsmasq package is only one of many DNS caches available for Linux. Avant de l’utiliser, vérifiez son adéquation à vos besoins et vérifiez qu’aucun autre cache n’est installé.Before using it, check its suitability for your particular needs, and check that no other cache is installed.

Nouvelles tentatives côté clientClient-side retries

DNS est principalement un protocole UDP.DNS is primarily a UDP protocol. Comme le protocole UDP ne garantit pas la remise des messages, la logique de nouvelle tentative est gérée dans le protocole DNS.Because the UDP protocol doesn't guarantee message delivery, retry logic is handled in the DNS protocol itself. Chaque client DNS (système d’exploitation) peut appliquer une logique de nouvelle tentative différente selon la préférence de son créateur :Each DNS client (operating system) can exhibit different retry logic, depending on the creator's preference:

  • Les systèmes d’exploitation Windows effectuent une nouvelle tentative après une seconde, puis à nouveau après deux secondes, quatre secondes et encore quatre secondes.Windows operating systems retry after one second, and then again after another two seconds, four seconds, and another four seconds.
  • La configuration Linux par défaut effectue une nouvelle tentative après cinq secondes.The default Linux setup retries after five seconds. Il est recommandé de configurer cinq nouvelles tentatives effectuées à une seconde d’intervalle.We recommend changing the retry specifications to five times, at one-second intervals.

Vérifiez les paramètres actuels sur une machine virtuelle Linux avec cat /etc/resolv.conf.Check the current settings on a Linux VM with cat /etc/resolv.conf. Examinez la ligne options, par exemple :Look at the options line, for example:

options timeout:1 attempts:5

Le fichier resolv.conf est généralement généré automatiquement et ne doit pas être modifié.The resolv.conf file is usually auto-generated, and should not be edited. Les étapes spécifiques pour l’ajout de la ligne options varient selon la distribution :The specific steps for adding the options line vary by distribution:

  • Ubuntu (utilise resolvconf) :Ubuntu (uses resolvconf):
    1. ajoutez la ligne options à /etc/resolvconf/resolv.conf.d/tail.Add the options line to /etc/resolvconf/resolv.conf.d/tail.
    2. Exécutez resolvconf -u pour effectuer la mise à jour.Run resolvconf -u to update.
  • SUSE (utilise netconf) :SUSE (uses netconf):
    1. Ajoutez timeout:1 attempts:5 au paramètre NETCONFIG_DNS_RESOLVER_OPTIONS="" dans /etc/sysconfig/network/config.Add timeout:1 attempts:5 to the NETCONFIG_DNS_RESOLVER_OPTIONS="" parameter in /etc/sysconfig/network/config.
    2. Exécutez netconfig update pour effectuer la mise à jour.Run netconfig update to update.
  • CentOS (utilise NetworkManager) :CentOS (uses NetworkManager):
    1. Ajoutez echo "options timeout:1 attempts:5" à /etc/NetworkManager/dispatcher.d/11-dhclient.Add echo "options timeout:1 attempts:5" to /etc/NetworkManager/dispatcher.d/11-dhclient.
    2. Mettez à jour avec service network restart.Update with service network restart.

Résolution de noms utilisant votre propre serveur DNSName resolution that uses your own DNS server

Cette section traite des machines virtuelles, des instances de rôle et des applications web.This section covers VMs, role instances, and web apps.

Machines virtuelles et instances de rôleVMs and role instances

Il peut arriver que vous ayez besoin d’autres fonctionnalités que celles fournies par Azure pour la résolution de noms.Your name resolution needs might go beyond the features provided by Azure. Par exemple, vous devrez peut-être utiliser des domaines Microsoft Windows Server Active Directory pour résoudre les noms DNS entre des réseaux virtuels.For example, you might need to use Microsoft Windows Server Active Directory domains, resolve DNS names between virtual networks. Dans le cadre de ces scénarios, Azure vous permet d’utiliser vos propres serveurs DNS.To cover these scenarios, Azure provides the ability for you to use your own DNS servers.

Les serveurs DNS d’un réseau virtuel peuvent transférer des requêtes DNS vers le programme de résolution récursive dans Azure.DNS servers within a virtual network can forward DNS queries to the recursive resolvers in Azure. Cela vous permet de résoudre les noms d’hôte au sein de ce réseau virtuel.This enables you to resolve host names within that virtual network. Par exemple, un contrôleur de domaine exécuté dans Azure peut répondre aux requêtes DNS concernant ses domaines et transférer toutes les autres requêtes vers Azure.For example, a domain controller (DC) running in Azure can respond to DNS queries for its domains, and forward all other queries to Azure. Le transfert des requêtes permet aux machines virtuelles de voir vos ressources locales (par le biais du contrôleur de domaine) et les noms d’hôte fournis par Azure (par le biais du redirecteur).Forwarding queries allows VMs to see both your on-premises resources (via the DC) and Azure-provided host names (via the forwarder). Les programmes de résolution récursive d’Azure sont accessibles via l’adresse IP virtuelle 168.63.129.16.Access to the recursive resolvers in Azure is provided via the virtual IP 168.63.129.16.

Le transfert DNS permet aussi la résolution DNS entre réseaux virtuels et permet à vos machines locales de résoudre les noms d’hôte fournis par Azure.DNS forwarding also enables DNS resolution between virtual networks, and allows your on-premises machines to resolve Azure-provided host names. Pour résoudre le nom d’hôte d’une machine virtuelle, la machine virtuelle du serveur DNS doit résider dans le même réseau virtuel et être configurée pour rediriger les requêtes de nom d’hôte vers Azure.In order to resolve a VM's host name, the DNS server VM must reside in the same virtual network, and be configured to forward host name queries to Azure. Comme le suffixe DNS est différent dans chaque réseau virtuel, vous pouvez utiliser des règles de redirection conditionnelles pour envoyer les requêtes DNS au réseau virtuel approprié en vue de la résolution.Because the DNS suffix is different in each virtual network, you can use conditional forwarding rules to send DNS queries to the correct virtual network for resolution. L’image suivante montre deux réseaux virtuels et un réseau local effectuant une résolution DNS entre réseaux virtuels à l’aide de cette méthode.The following image shows two virtual networks and an on-premises network doing DNS resolution between virtual networks, by using this method. Un exemple de redirecteur DNS est disponible dans la Galerie de modèles de démarrage rapide Azure et sur GitHub.An example DNS forwarder is available in the Azure Quickstart Templates gallery and GitHub.

Notes

Une instance de rôle peut résoudre les noms des machines virtuelles appartenant au même réseau virtuel.A role instance can perform name resolution of VMs within the same virtual network. Pour cela, elle utilise le nom de domaine complet, qui est constitué du nom d’hôte de la machine virtuelle et du suffixe DNS internal.cloudapp.net.It does so by using the FQDN, which consists of the VM's host name and internal.cloudapp.net DNS suffix. Toutefois, dans ce cas, la résolution de noms réussit uniquement si l’instance de rôle a le nom de la machine virtuelle défini dans le Schéma Rôle (fichier .cscfg).However, in this case, name resolution is only successful if the role instance has the VM name defined in the Role Schema (.cscfg file). <Role name="<role-name>" vmName="<vm-name>">

Les instances de rôle qui doivent effectuer une résolution de noms des machines virtuelles dans un autre réseau virtuel (nom de domaine complet utilisant le suffixe internal.cloudapp.net) doivent le faire à l’aide de la méthode décrite dans cette section, c’est-à-dire, en transférant les serveurs DNS personnalisés entre les deux réseaux virtuels.Role instances that need to perform name resolution of VMs in another virtual network (FQDN by using the internal.cloudapp.net suffix) have to do so by using the method described in this section (custom DNS servers forwarding between the two virtual networks).

Diagramme des requêtes DNS entre les deux réseaux virtuels

Lorsque vous utilisez la résolution de noms fournie par Azure, le protocole DHCP d’Azure fournit un suffixe DNS interne ( .internal.cloudapp.net) à chaque machine virtuelle.When you are using Azure-provided name resolution, Azure Dynamic Host Configuration Protocol (DHCP) provides an internal DNS suffix (.internal.cloudapp.net) to each VM. Ce suffixe permet d’effectuer la résolution des noms d’hôte, car les enregistrements de noms d’hôte se trouvent dans la zone internal.cloudapp.net.This suffix enables host name resolution because the host name records are in the internal.cloudapp.net zone. Quand vous utilisez votre propre solution de résolution de noms, ce suffixe n’est pas fourni aux machines virtuelles, car il interfère avec d’autres architectures DNS (comme dans les scénarios avec jointure de domaine).When you are using your own name resolution solution, this suffix is not supplied to VMs because it interferes with other DNS architectures (like domain-joined scenarios). Au lieu de cela, Azure fournit un espace réservé non fonctionnel (reddog.microsoft.com).Instead, Azure provides a non-functioning placeholder (reddog.microsoft.com).

Si nécessaire, vous pouvez déterminer le suffixe DNS interne à l’aide de PowerShell ou de l’API :If necessary, you can determine the internal DNS suffix by using PowerShell or the API:

Si la redirection des requêtes vers Azure ne suffit pas, vous devez fournir votre propre solution DNS.If forwarding queries to Azure doesn't suit your needs, you should provide your own DNS solution. Votre solution DNS doit :Your DNS solution needs to:

  • Fournir la résolution de noms d’hôte appropriée, via DDNS par exemple.Provide appropriate host name resolution, via DDNS, for example. Si vous utilisez DDNS, il peut être nécessaire de désactiver le nettoyage des enregistrements DNS.If you are using DDNS, you might need to disable DNS record scavenging. Les baux DHCP d’Azure sont longs et le nettoyage peut supprimer prématurément des enregistrements DNS.Azure DHCP leases are long, and scavenging might remove DNS records prematurely.
  • Fournir la résolution récursive appropriée pour permettre la résolution de noms de domaines externes.Provide appropriate recursive resolution to allow resolution of external domain names.
  • Être accessible (TCP et UDP sur le port 53) à partir des clients dont elle traite les demandes et être en mesure d’accéder à Internet.Be accessible (TCP and UDP on port 53) from the clients it serves, and be able to access the internet.
  • Être protégée contre tout accès à partir d’Internet, pour atténuer les menaces posées par les agents externes.Be secured against access from the internet, to mitigate threats posed by external agents.

Notes

Pour de meilleures performances, lorsque vous utilisez des machines virtuelles Azure en tant que serveurs DNS, le protocole IPv6 doit être désactivé.For best performance, when you are using Azure VMs as DNS servers, IPv6 should be disabled. Une adresse IP publique doit être attribuée à chaque machine virtuelle de serveur DNS.A public IP address should be assigned to each DNS server VM. Pour connaître les autres optimisations et analyses de performances disponibles lorsque vous utilisez Windows Server en tant que serveur DNS, consultez Name resolution performance of a recursive Windows DNS Server 2012 R2.For additional performance analysis and optimizations when you are using Windows Server as your DNS server, see Name resolution performance of a recursive Windows DNS Server 2012 R2.

les applications webWeb apps

Supposons que vous ayez besoin d’effectuer la résolution des noms entre votre application web créée à l’aide d’App Service, et liée à un réseau virtuel, et les machines virtuelles du même réseau virtuel.Suppose you need to perform name resolution from your web app built by using App Service, linked to a virtual network, to VMs in the same virtual network. Après avoir configuré un serveur DNS personnalisé comprenant un redirecteur DNS qui transfère les requêtes vers Azure (adresse IP virtuelle : 168.63.129.16), procédez aux étapes suivantes :In addition to setting up a custom DNS server that has a DNS forwarder that forwards queries to Azure (virtual IP 168.63.129.16), perform the following steps:

  1. Activez l’intégration de réseau virtuel pour votre application web, si ce n’est pas déjà fait, comme décrit dans Intégrer une application à un réseau virtuel Azure.Enable virtual network integration for your web app, if not done already, as described in Integrate your app with a virtual network.

  2. Dans le portail Azure, pour le plan App Service qui héberge l’application web, sélectionnez Synchroniser le réseau sous Mise en réseau, Intégration du réseau virtuel.In the Azure portal, for the App Service plan hosting the web app, select Sync Network under Networking, Virtual Network Integration.

    Capture d’écran de la résolution de noms dans un réseau virtuel

Si vous devez effectuer une résolution de noms à partir de votre application web créée à l’aide d’App Service, liée à un réseau virtuel, vers des machines virtuelles dans un autre réseau virtuel, vous devez utiliser des serveurs DNS personnalisés sur les deux réseaux virtuels, comme suit :If you need to perform name resolution from your web app built by using App Service, linked to a virtual network, to VMs in a different virtual network, you have to use custom DNS servers on both virtual networks, as follows:

  • Configurez un serveur DNS dans votre réseau virtuel cible, sur une machine virtuelle qui peut également transférer les requêtes vers le programme de résolution récursive d’Azure (adresse IP virtuelle : 168.63.129.16).Set up a DNS server in your target virtual network, on a VM that can also forward queries to the recursive resolver in Azure (virtual IP 168.63.129.16). Un exemple de redirecteur DNS est disponible dans la Galerie de modèles de démarrage rapide Azure et sur GitHub.An example DNS forwarder is available in the Azure Quickstart Templates gallery and GitHub.
  • Configurez un redirecteur DNS dans le réseau virtuel source sur une machine virtuelle.Set up a DNS forwarder in the source virtual network on a VM. Configurez ce redirecteur DNS pour transférer les requêtes au serveur DNS dans votre réseau virtuel cible.Configure this DNS forwarder to forward queries to the DNS server in your target virtual network.
  • Configurez votre serveur DNS source dans les paramètres de votre réseau virtuel source.Configure your source DNS server in your source virtual network’s settings.
  • Activez l’intégration de réseau virtuel pour votre application web afin de créer un lien vers le réseau virtuel source, en suivant les instructions de l’article Intégrer une application à un réseau virtuel Azure.Enable virtual network integration for your web app to link to the source virtual network, following the instructions in Integrate your app with a virtual network.
  • Dans le portail Azure, pour le plan App Service qui héberge l’application web, sélectionnez Synchroniser le réseau sous Mise en réseau, Intégration du réseau virtuel.In the Azure portal, for the App Service plan hosting the web app, select Sync Network under Networking, Virtual Network Integration.

Spécifier les serveurs DNSSpecify DNS servers

Lorsque vous utilisez vos propres serveurs DNS, Azure offre la possibilité de spécifier plusieurs serveurs DNS par réseau virtuel.When you are using your own DNS servers, Azure provides the ability to specify multiple DNS servers per virtual network. Vous pouvez également spécifier plusieurs serveurs DNS par interface réseau (pour Azure Resource Manager) ou par service cloud (pour le modèle de déploiement classique).You can also specify multiple DNS servers per network interface (for Azure Resource Manager), or per cloud service (for the classic deployment model). Les serveurs DNS spécifiés pour une interface réseau ou un service cloud ont la priorité sur les serveurs DNS spécifiés pour le réseau virtuel.DNS servers specified for a network interface or cloud service get precedence over DNS servers specified for the virtual network.

Notes

Les propriétés d’une connexion réseau, telles que les adresses IP des serveurs DNS, ne doivent pas être modifiées directement dans les machines virtuelles.Network connection properties, such as DNS server IPs, should not be edited directly within VMs. En effet, ces propriétés risquent d’être effacées pendant la réparation du service, lors du remplacement de la carte réseau virtuelle.This is because they might get erased during service heal when the virtual network adaptor gets replaced. Cela s’applique pour les machines virtuelles Windows et Linux.This applies to both Windows and Linux VMs.

Quand vous utilisez le modèle de déploiement Azure Resource Manager, vous pouvez spécifier des serveurs DNS pour un réseau virtuel et une interface réseau.When you are using the Azure Resource Manager deployment model, you can specify DNS servers for a virtual network and a network interface. Pour plus d’informations, consultez Gérer un réseau virtuel et Gérer une interface réseau.For details, see Manage a virtual network and Manage a network interface.

Notes

Si vous choisissez un serveur DNS personnalisé pour votre réseau virtuel, vous devez spécifier au moins une adresse d’IP de serveur DNS, à défaut de quoi, le réseau virtuel ignorera la configuration et utilisera le DNS fourni par Azure.If you opt for custom DNS server for your virtual network, you must specify at least one DNS server IP address; otherwise, virtual network will ignore the configuration and use Azure-provided DNS instead.

Si vous utilisez le modèle de déploiement classique, vous pouvez spécifier des serveurs DNS pour le réseau virtuel dans le portail Azure ou dans le fichier Configuration réseau.When you are using the classic deployment model, you can specify DNS servers for the virtual network in the Azure portal or the Network Configuration file. Pour les services cloud, vous pouvez spécifier des serveurs DNS via le fichier Configuration du service ou via PowerShell avec New-AzureVM.For cloud services, you can specify DNS servers via the Service Configuration file or by using PowerShell, with New-AzureVM.

Notes

Si vous modifiez les paramètres DNS d’un réseau virtuel ou d’une machine virtuelle déjà déployés, vous devez redémarrer l’ensemble des machines virtuelles concernées pour que les modifications prennent effet.If you change the DNS settings for a virtual network or virtual machine that is already deployed, you need to restart each affected VM for the changes to take effect.

Étapes suivantesNext steps

Modèle de déploiement Azure Resource Manager :Azure Resource Manager deployment model:

Modèle de déploiement classique :Classic deployment model: