Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

DNS ALG

Le service DNS (Domain Name System) couche applicative Gateway (ALG) gère les données associées à la localisation et à la traduction des noms de domaine en adresses IP. L’ALG s’exécute généralement sur le port 53. L’ALG surveille les paquets de requêtes et de réponses DNS et ne prend en charge que le trafic UDP.

Utilisez l’explorateur de fonctionnalités pour confirmer la prise en charge de fonctionnalités spécifiques par la plate-forme et la version.

Consultez la sectionComportement de l’ALG DNS spécifique à la plate-forme pour obtenir des remarques relatives à votre plate-forme.

Présentation de DNS ALG

Le service de passerelle de couche applicative (ALG) DNS fournit une passerelle au niveau de l’application à utiliser avec les clients DNS. Le service DNS ALG permet à un client d’accéder à plusieurs serveurs DNS sur différents réseaux et assure le routage vers et depuis ces serveurs. Il prend également en charge la traduction d’adresse flexible des paquets de requêtes et de réponses DNS. Ces fonctions permettent au client DNS d’interroger de nombreux domaines différents à partir d’une seule instance de serveur DNS côté client du réseau.

Le serveur DNS écoute via le port UDP 53 les requêtes entrantes des résolveurs DNS. Un résolveur communique avec les serveurs DNS en envoyant des requêtes DNS et en gérant les réponses DNS.

Note:

Le port par défaut pour DNS ALG est le port 53.

L’ALG DNS remplit les fonctions suivantes :

  • Surveille les paquets de requêtes et de réponses DNS et ferme la session lorsque la réponse DNS est reçue

  • Effectue du DNS Doctoring

  • Effectue les transformations d’adresses IPv4 et IPv6

Le système de noms de domaine (DNS) a été conçu à l’origine pour prendre en charge les requêtes d’une base de données configurée de manière statique et les données étaient susceptibles de changer.

La prise en charge du DNS dynamique (DDNS) est désormais disponible en plus de la norme DNS. La principale différence entre DNS et DDNS réside dans le format de message de la section d’en-tête et du message de mise à jour.

Les messages DDNS sont traités différemment des messages DNS. L’analyse des messages est réécrite pour DDNS. DDNS fait NAT et NAT-PT dans la partie requête du message et DNS fait NAT et NAT-PT dans la partie réponse du message.

Exemple : Configuration de l’ALG DNS

Cet exemple montre comment configurer l’ALG DNS pour qu’il transmette le trafic DNS avec un pool NAT statique sur les équipements Juniper Networks.

Exigences

Avant de commencer :

Aperçu

Dans cet exemple, l’ALG pour DNS est configuré pour surveiller et autoriser l’échange de trafic DNS entre les clients et le serveur situés de part et d’autre d’un équipement Juniper Networks.

Cet exemple montre comment configurer un pool NAT statique et un ensemble de règles, et associer l’ALG DNS à une stratégie.

Topologie

La figure 1 illustre la topologie de l’ALG DNS.

Figure 1 : topologie DNS ALG Topology DNS ALG

Configuration

Configuration d’un pool statique NAT et d’un ensemble de règles

Configuration rapide de la CLI

Pour configurer rapidement cette section de l’exemple, copiez les commandes suivantes, collez-les dans un fichier texte, supprimez les sauts de ligne, modifiez tous les détails nécessaires pour qu’ils correspondent à la configuration de votre réseau, copiez et collez les commandes dans l’interface de ligne de commande au niveau de la [edit] hiérarchie, puis passez commit en mode de configuration.

Procédure étape par étape

L’exemple suivant vous oblige à naviguer à différents niveaux dans la hiérarchie de configuration. Pour obtenir des instructions sur cette procédure, reportez-vous à la section Utilisation de l’éditeur CLI en mode configuration dans le Guide de l’utilisateur de l’interface de ligne de commande.

Pour configurer un pool NAT statique :

  1. Créez un ensemble de règles statiques NAT.

  2. Associez l’application DNS à l’aide d’une stratégie.

Résultats

À partir du mode configuration, confirmez votre configuration en entrant la show security nat commande. Si la sortie n’affiche pas la configuration prévue, répétez les instructions de configuration de cet exemple pour la corriger.

Si vous avez terminé de configurer l’appareil, passez commit en mode de configuration.

Configuration et impression de la trace DNS

But

Imprime le fichier de trace DNS.

Action

À partir du mode configuration, entrez la commande suivante.

Vérification

Pour vérifier que la configuration fonctionne correctement, effectuez les opérations suivantes :

Vérification de DNS ALG

But

Vérifiez que DNS ALG est activé.

Action

À partir du mode opérationnel, entrez la show security alg status commande.

Signification

La sortie indique que l’ALG DNS est activé.

Vérification de la session de flux de sécurité DNS ALG

But

Vérifiez que la session de flux de sécurité ALG est activée.

Action

À partir du mode opérationnel, entrez la show security flow session application dns extensive commande.

Signification

La sortie indique qu’il existe un flux actif utilisant l’ALG DNS.

Comprendre DNS et DDNS Doctoring

Junos OS prend en charge le système de noms de domaine (DNS) pour les ALG. L’ALG DNS surveille les paquets de requête et de réponse DNS et ferme la session si l’indicateur DNS indique que le paquet est un message de réponse. Pour configurer l’ALG DNS, utilisez l’instruction edit security alg dns au niveau de la [edit security alg] hiérarchie.

Le DNS fournit un mappage nom-adresse au sein d’une classe de routage, tandis que la traduction d’adresses réseau (NAT) tente d’assurer un routage transparent entre les hôtes dans des domaines d’adresses disparates de la même classe de routage. Par conséquent, le NAT peut causer des problèmes DNS que le DNG ALG doit gérer par le biais d’un processus appelé DNS doctoring.

La même fonctionnalité de falsification s’applique au système dynamique de noms de domaine (DDNS). Pour DDNS en mode NAT, vous pouvez également effectuer la traduction IP dans la mise à jour DDNS.

Pour résoudre les problèmes introduits par NAT, les fonctionnalités DNS et DDNS ALG ont été étendues pour prendre en charge le NAT statique, ce qui permet de résoudre les problèmes par le biais de DNS Doctoring.

Le processus de restauration et de remédiation se déroule en deux parties :

  • Packet sanity check

    Pour le paquet DNS, les champs de contrôle de l’ALG DNS sont les questions, les réponses, l’autorité et les informations supplémentaires. L’ALG DNS abandonne le paquet si le nombre de questions est supérieur à 1, si le nom de domaine est supérieur à 255 octets ou si la longueur de l’étiquette est supérieure à 63 octets.

    Pour le paquet DDNS, les champs de contrôle DNS ALG sont la zone, les prérequis, la mise à jour et les données supplémentaires. L’ALG DNS abandonne le paquet si le nombre de zones est supérieur à 1, si le nom de domaine est supérieur à 255 octets ou si la longueur de l’étiquette est supérieure à 63 octets.

    Pour le DNS comme pour le DDNS, l’ALG DNS supprime le paquet qui n’est pas conforme aux normes.

  • NAT

La figure 2 montre comment le DNS traduit une adresse privée en adresse publique.

Figure 2 : Traduction des adresses DNS (privées vers publiques) DNS Address Translation (Private to Public)

Lorsque l’hôte X dans external.com veut résoudre l’adresse de l’hôte A via DNS et si l’ALG DNS ne prend pas en charge NAT, il prend une adresse privée telle que 172.19.1.10, qui n’est pas valide pour l’hôte X. L’adresse privée est traduite en adresse publique 10,131.108.10 via le DNS ALG.

La figure 3 montre comment DNS traduit une adresse publique en adresse privée.

Figure 3 : Traduction des adresses DNS (publiques vers privées) DNS Address Translation (Public to Private)

Lorsque l'hôte A dans private.com souhaite résoudre l'adresse de l'hôte B via DNS et que l'ALG DNS ne prend pas en charge NAT, il prend une adresse publique du serveur DNS en external.com, telle que 10.131.108.8. Si l’hôte A envoie du trafic à l’hôte B avec l’adresse publique 10.131.108.8, qui n’est pas valide pour l’hôte B dans le domaine privé. Par conséquent, l’adresse publique dans l’enregistrement A de la requête DNS est traduite en adresse privée 172.19.2.1 via l’ALG DNS.

Note:

L’ALG DNS peut traduire les 32 premiers enregistrements A en une seule réponse DNS. Les enregistrements A après que les 32 premiers enregistrements ne sont pas traités. Notez également que le DNS ALG prend en charge les adresses IPv4 et IPv6 et ne prend pas en charge les tunnels VPN.

Désactivation de DNS et DDNS Doctoring

L’ALG DNS doit être activé sur les appareils pour effectuer le DNS et le DDNS doctoring. Lorsque l’ALG DNS est activé sur l’appareil, la fonctionnalité de falsification DNS et DDNS est activée par défaut. Vous pouvez désactiver le DNS et DDNS doctoring à l’aide de l’interface de ligne de commande.

Pour désactiver la médecine DNS et DDNS :

  1. Désactivez toutes les fonctionnalités de falsification en spécifiant l’option de none configuration.

    Cette commande désactive toutes les fonctions de falsification.

  2. Désactivez la fonctionnalité NAT et conservez la fonction de vérification de l’intégrité en spécifiant l’option sanity-check de configuration.

    Cette option désactive la fonction NAT et conserve la fonction de vérification de l’intégrité.

  3. Si vous avez terminé de configurer l’appareil, validez la configuration.

  4. Pour vérifier la configuration, utilisez la commande show usp algs dns statsvty .

Comportement de l’ALG DNS spécifique à la plate-forme

Utilisez l’explorateur de fonctionnalités pour confirmer la prise en charge de fonctionnalités spécifiques par la plate-forme et la version.

Utilisez le tableau suivant pour passer en revue les comportements spécifiques à votre plateforme :

Plateforme

Différence

SRX Series

  • Les appareils SRX3400, SRX3600, SRX4600, SRX5600 et SRX5800 qui prennent en charge l’ALG DNS activent le DNS Doctoring par défaut.