DNS dans un réseau en nuage virtuel
Le système de noms de domaine (DNS) permet aux ordinateurs d'utiliser des noms d'hôte au lieu d'adresses IP pour communiquer entre eux. Cette fonction est limitée au trafic au sein d'un réseau en nuage virtuel (VCN), pour l'utilisation du DNS avec le trafic Internet, voir DNS et gestion du trafic
Choix pour le DNS dans un VCN
Voici les choix de résolution de nom DNS pour les instances d'un réseau VCN. Vous effectuez une sélection pour chaque sous-réseau du VCN, à l'aide de son jeu d'options DHCP. Cette opération est semblable à la façon dont vous configurez quelles table de routage et listes de sécurité sont associées à chaque sous-réseau. Pour plus d'informations, voir Options DHCP.
L'option DHCP du serveur de noms de domaine sert à spécifier le type de DNS pour le sous-réseau associé. Si vous modifiez la valeur de l'option, redémarrez le client DHCP sur l'instance ou redémarrez cette dernière. Sinon, la modification n'est pas prise en compte tant que le client DHCP actualise la location (dans les 24 heures).
- CHOIX PAR DÉFAUT : RÉSOLVEUR INTERNET ET DE RÉSEAU EN NUAGE VIRTUEL
- Cette option fournie par Oracle comprend deux parties :
- RÉSOLVEUR PERSONNALISÉ
- Utilisez les serveurs DNS pour la résolution (trois au maximum). Il peut s'agir des serveurs DNS :
À propos des domaines et noms d'hôte DNS
Lors de la création d'un réseau VCN et des sous-réseaux, vous pouvez définir des étiquettes DNS pour chacun d'eux. Les étiquettes DNS de sous-réseau ne peuvent être définies que si le réseau VCN lui-même est créé avec une étiquette DNS. Ces étiquettes, ainsi que le domaine parent de oraclevcn.com
, forment le nom de domaine VCN et le nom de domaine de sous-réseau :
- Nom de domaine VCN :
<VCN-DNS-label>.oraclevcn.com
- Nom de domaine de sous-réseau :
<subnet-DNS-label>.<VCN-DNS-label>.oraclevcn.com
Lorsque vous créez ensuite une instance de calcul, vous pouvez affecter un nom d'hôte à la carte VNIC créée automatiquement lors de la création de l'instance (la carte VNIC principale). Avec le nom de domaine du sous-réseau, le nom d'hôte forme le nom de domaine complet de l'instance (FQDN) :
- FQDN de l'instance :
<hostname>.<subnet-DNS-label>.<VCN-DNS-label>.oraclevcn.com
Par exemple : database1.privatesubnet1.abccorpvcn1.oraclevcn.com
.
Le nom de domaine complet mène à l'adresse IP privée de l'instance. Le résolveur Internet et VCN effectue également une consultation inversée de DNS qui vous permet de trouver le nom d'hôte correspondant à l'adresse IP privée.
Si vous ajoutez une carte d'interface réseau virtuelle secondaire à une instance, vous pouvez spécifier un nom d'hôte. Le nom de domaine complet résultant mène à l'adresse IP privée de la carte vNIC (l'adresse IP privée principale).
Si vous ajoutez une adresse IP privée secondaire à une carte d'interface réseau virtuelle, vous pouvez spécifier un nom d'hôte. Le nom de domaine complet résultant mène à cette adresse IP privée.
Nous vous recommandons d'utiliser toujours l'instance FQDN lors de l'envoi de messages à un hôte, ou de n'indiquer le nom de l'hôte que pour les messages envoyés dans un VCN.
Exigences pour les étiquettes et les noms d'hôte DNS
- Étiquettes de réseau VCN et de sous-réseau : 15 caractères alphanumériques au maximum et doivent commencer par une lettre. Notez que les tirets et les traits de soulignement ne sont pas autorisés. La valeur ne peut être modifiée ultérieurement.
- Noms d'hôte : 63 caractères, lettres et chiffres au maximum sont autorisés. Les tirets sont autorisés. Notez que les points ne sont pas autorisés, que les tirets ne sont pas autorisés au début ou à la fin du nom d'hôte et que ce dernier ne peut pas contenir uniquement des chiffres. Les noms d'hôte doivent être conformes aux documents RFC 952 et 1123. La valeur peut être modifiée ultérieurement.
Le service de réseau prend en charge les noms d'hôte de 63 caractères au maximum. Cependant, certains anciens systèmes d'exploitation imposent des noms d'hôte plus courts. Sous Linux, voici comment trouver la longueur maximale autorisée du nom d'hôte :
getconf HOST_NAME_MAX
Si le nom d'hôte d'une instance dépasse le maximum défini pour le système d'exploitation, son nom de domaine complet ne peut pas être résolu dans le réseau VCN. Vous pouvez utiliser le service Réseau pour mettre à jour la carte VNIC et remplacer le nom d'hôte par une valeur plus courte.
Unicité :
- L'étiquette DNS du VCN doit être unique sur tous les réseaux en nuage virtuels d'une location (non requise, mais recommandée)
- Les étiquettes DNS de sous-réseau doivent être uniques au sein du réseau VCN
- Les noms d'hôte doivent être uniques dans le sous-réseau
Ne confondez pas l'étiquette ou le nom d'hôte DNS avec le nom convivial que vous pouvez affecter à l'objet (le nom d'affichage), qui n'est pas nécessairement unique.
Validation et génération du nom d'hôte
Si vous définissez des étiquettes DNS pour le réseau VCN et les sous-réseaux, Oracle valide le nom d'hôte pour la conformité et l'unicité DNS lors de la création de l'instance de calcul. Si l'une de ces exigences n'est pas respectée, la demande de création échoue.
Si vous n'avez pas spécifié de nom d'hôte au cours de la création de l'instance, Oracle tente d'utiliser le nom d'affichage de l'instance comme nom d'hôte. Si la validation du nom d'affichage échoue, Oracle génère automatiquement un nom d'hôte conforme DNS qui est unique dans le sous-réseau. Vous pouvez voir le nom d'hôte généré dans la page de l'instance de la console. Dans l'API, le nom d'hôte fait partie de l'objet de la carte vNIC.
Si vous ne fournissez pas de nom d'hôte lors de la création de l'instance à l'aide de la trousse SDK ou de l'interface de ligne de commande, Oracle ne le génère pas. Cela signifie que l'instance ne peut pas être résolue à l'aide du résolveur Internet et VCN.
Si vous ne fournissez pas de nom d'hôte ou de nom d'affichage lors de la création de l'instance à l'aide de la console, Oracle génère automatiquement un nom d'affichage et un enregistrement DNS correspondant, à condition que le sous-réseau soit associé à une étiquette DNS valide.
Le nom d'hôte du système d'exploitation de Linux sur l'instance est automatiquement réglé à celui que vous avez défini lors de la création de l'instance (ou celui généré par Oracle). Si vous modifiez le nom d'hôte directement dans l'instance, celui-ci n'est pas mis à jour.
Si vous ajoutez une carte d'interface réseau virtuelle secondaire à une instance, ou une adresse IP privée secondaire à une carte vNIC, Oracle ne tente jamais de générer un nom d'hôte. Indiquez un nom d'hôte valide si vous voulez que l'adresse IP privée puisse être résolue à l'aide du résolveur Internet et VCN.
Options DHCP pour DNS
Deux options DHCP sont liées au DNS dans le réseau VCN :
-
Serveur de noms de domaine : Pour spécifier le type de DNS (résolveur Internet et VCN, ou résolveur personnalisé).
- Valeur par défaut dans le jeu d'options DHCP par défaut : Résolveur Internet et VCN
-
Domaine de recherche : Pour spécifier un seul domaine de recherche. Lors de la résolution d'une interrogation DNS, le système d'exploitation ajoute le domaine de recherche à la valeur sur laquelle porte l'interrogation. Vous ne pouvez spécifier qu'un seul domaine de recherche pour le jeu d'options DHCP.
- Valeur par défaut dans le jeu d'options DHCP par défaut : Nom de domaine VCN (
<VCN-DNS-label>.oraclevcn.com
), si vous avez spécifié une étiquette DNS pour le réseau VCN lors de la création mais n'avez pas indiqué de valeur de domaine de recherche. Si vous avez spécifié une valeur de domaine de recherche, cette valeur est alors utilisée pour l'option Domaine de recherche. Si vous n'avez pas spécifié d'étiquette DNS, le jeu d'options DHCP par défaut n'inclut pas d'option de domaine de recherche.
- Valeur par défaut dans le jeu d'options DHCP par défaut : Nom de domaine VCN (
Nous vous recommandons de toujours utiliser l'instance FQDN lors de l'envoi de messages à un hôte dans un autre sous-réseau/VCN et de ne pas recourir au domaine de recherche DNS.
En général, lorsqu'un jeu d'options DHCP est initialement créé (jeu par défaut ou un jeu personnalisé que vous créez), le service de réseau ajoute automatiquement l'option Domaine de recherche et la règle au nom du domaine VCN ( <VCN-DNS-label>.oraclevcn.com
) si toutes les conditions sont remplies :
- Le réseau VCN a une étiquette DNS
- Type de DNS = Résolveur Internet et VCN
- Vous n'avez pas spécifié de domaine de recherche lors de la création du jeu d'options DHCP
Après la création du jeu d'options DHCP, vous pouvez toujours supprimer l'option Domaine de recherche ou la régler à une autre valeur.
Comment activer les noms d'hôte DNS dans un réseau VCN
Seuls les réseaux en nuage virtuels créés après le lancement de la fonction Résolveur Internet et VCN ont un accès automatique à celle-ci. L'activation des noms d'hôte DNS pour un nouveau réseau VCN dépend de l'interface que vous utilisez.
- Lors de la création du réseau VCN :
- Sélectionnez Utiliser les noms d'hôte DNS dans ce VCN
- Spécifiez une étiquette DNS pour le réseau VCN. Si vous sélectionnez cette option mais que vous ne spécifiez pas d'étiquette DNS, la console suppose que vous voulez utiliser le résolveur Internet et de VCN dans le VCN et génère automatiquement une étiquette DNS pour le VCN. La console utilise le nom du réseau VCN que vous avez fourni, supprime les caractères non numériques, s'assure que le premier caractère est une lettre et tronque l'étiquette à 15 caractères. La console affiche le résultat et si vous ne l'aimez pas, vous pouvez entrer une autre valeur dans le champ Étiquette DNS. Voir À propos des domaines et noms d'hôte DNS.
- Lors de la création des sous-réseaux :
- Encore une fois, sélectionnez Utiliser les noms d'hôte DNS dans ce sous-réseau
- Définissez une étiquette DNS pour chaque sous-réseau. Si vous cochez la case mais ne spécifiez pas d'étiquette DNS pour un sous-réseau, la console suppose que vous voulez utiliser le résolveur Internet et VCN et génère automatiquement une étiquette DNS. La console utilise le nom du sous-réseau que vous avez fourni, supprime les caractères non alphanumériques, s'assure que le premier caractère est une lettre et tronque l'étiquette à 15 caractères. La console affiche le résultat et, si vous ne l'aimez pas, vous pouvez entrer une valeur personnalisée dans le champ Étiquette DNS. Voir À propos des domaines et noms d'hôte DNS. Note
Les étiquettes DNS du sous-réseau ne peuvent être définies que si le réseau VCN lui-même est créé avec une étiquette DNS. - Associez un jeu d'options DHCP contenant le type DNS = résolveur Internet et VCN. Le jeu d'options DHCP par défaut dans le réseau VCN utilise le résolveur Internet et VCN par défaut.
- Lors de la création d'instances de calcul :
- Sélectionnez l'option pour affecter un enregistrement DNS privé.
- Spécifiez un nom d'hôte (ou au moins un nom d'affichage) pour chaque instance. Pour plus d'informations, voir À propos des domaines et noms d'hôte DNS.
Si vous ne sélectionnez pas Utiliser les noms d'hôte DNS dans ce VCN lors de la création du VCN, vous ne pouvez pas définir l'étiquette DNS du VCN ou des sous-réseaux et vous ne pouvez pas spécifier de nom d'hôte lors de la création de l'instance de calcul.
La procédure précédente suppose que vous créez le réseau VCN et les sous-réseaux un par un dans la console. Celle-ci dispose d'une fonction pour créer en même temps un réseau VCN avec des sous-réseaux et une passerelle Internet automatiquement. Si vous utilisez cette fonction pour créer le VCN et les sous-réseaux, la console génère automatiquement des étiquettes DNS pour ceux-ci.
-
Lors de la création du réseau VCN :
- Spécifiez une étiquette DNS pour le réseau VCN. Voir À propos des domaines et noms d'hôte DNS. Si vous ne définissez pas de valeur (si elle est nulle), Oracle suppose que vous ne voulez pas utiliser le résolveur Internet et VCN, même si les options DHCP contiennent DhcpDnsOption
serverType
=VcnLocalPlusInternet
.
- Spécifiez une étiquette DNS pour le réseau VCN. Voir À propos des domaines et noms d'hôte DNS. Si vous ne définissez pas de valeur (si elle est nulle), Oracle suppose que vous ne voulez pas utiliser le résolveur Internet et VCN, même si les options DHCP contiennent DhcpDnsOption
-
Lors de la création des sous-réseaux :
- Définissez une étiquette DNS pour chaque sous-réseau. Voir À propos des domaines et noms d'hôte DNS. Si vous avez indiqué une étiquette DNS pour le réseau VCN mais pas pour le sous-réseau, Oracle suppose que vous ne voulez pas que les instances du sous-réseau utilisent le résolveur Internet et VCN. Il n'est alors plus possible d'utiliser des noms d'hôte pour communiquer avec les instances du VCN.Note
Les étiquettes DNS du sous-réseau ne peuvent être définies que si le réseau VCN lui-même est créé avec une étiquette DNS. - Associez un jeu d'options DHCP contenant DhcpDnsOption
serverType
=VcnLocalPlusInternet
, soit le jeu d'options DHCP par défaut du VCN.
- Définissez une étiquette DNS pour chaque sous-réseau. Voir À propos des domaines et noms d'hôte DNS. Si vous avez indiqué une étiquette DNS pour le réseau VCN mais pas pour le sous-réseau, Oracle suppose que vous ne voulez pas que les instances du sous-réseau utilisent le résolveur Internet et VCN. Il n'est alors plus possible d'utiliser des noms d'hôte pour communiquer avec les instances du VCN.
-
Lors de la création d'instances :
- Sélectionnez l'option pour affecter un enregistrement DNS privé.
- Spécifiez un nom d'hôte (ou au moins un nom d'affichage) pour chaque instance. Pour plus d'informations, voir À propos des domaines et noms d'hôte DNS.
Si vous n'avez spécifié aucune étiquette DNS du réseau VCN, vous ne pouvez pas effectuer les opérations suivantes :
- Définir l'étiquette DNS pour les sous-réseaux (ce qui entraîne l'échec de l'appel
CreateSubnet
). - Spécifiez un nom d'hôte lors de la création de l'instance de calcul (ce qui entraîne l'échec de l'appel
LaunchInstance
) - Affecter un nom d'hôte à une carte vNIC secondaire ou à une adresse IP privée secondaire.
Scénario 1 : Utiliser le résolveur Internet et VCN avec les noms d'hôte DNS sur l'ensemble du réseau VCN
Le scénario type est d'activer le résolveur Internet et VCN sur l'ensemble d'un réseau VCN afin que toutes les instances du VCN puissent communiquer entre elles sans connaître leur adresse IP. Pour ce faire, suivez les instructions de la rubrique À propos des domaines et noms d'hôte DNS et affectez une étiquette DNS au réseau VCN et à chaque sous-réseau. Affectez ensuite à chaque instance un nom d'hôte (ou au moins un nom d'affichage) à la création. Si vous ajoutez une carte d'interface réseau virtuelle secondaire ou une adresse IP privée secondaire, affectez-lui également un nom d'hôte. Les instances peuvent ensuite communiquer entre elles à l'aide des noms de domaine complets et non des adresses IP.
Scénario 2 : Utiliser un résolveur DNS privé pour résoudre les noms d'hôte DNS
Vous pouvez utiliser un résolveur DNS privé pour répondre aux interrogations DNS d'un réseau VCN à l'aide d'une configuration que vous créez. Le résolveur écoute par défaut 169.254.169.254, mais vous pouvez également définir des points d'extrémité pour écouter les interrogations et les transmettre à d'autres résolveurs dans d'autres réseaux en nuage virtuels, le réseau sur place d'un client ou un autre réseau privé. Pour plus d'informations, voir Résolveurs DNS privés.
Scénario 3 : Utiliser des options DHCP différentes par sous-réseau
Le scénario 1 suppose que vous souhaitez utiliser le résolveur Internet et VCN de la même manière sur tous les sous-réseaux, et donc sur toutes les instances du réseau VCN. Toutefois, vous pouvez configurer différents paramètres DNS pour chaque sous-réseau car les options DHCP sont configurées au niveau du sous-réseau. Le plus important à retenir est que vous devez configurer les paramètres du résolveur VCN et Internet dans le sous-réseau où vous voulez générer l'interrogation DNS.
Par exemple, si vous voulez que l'instance A du sous-réseau A puisse résoudre le nom d'hôte de l'instance B dans le sous-réseau B, vous devez configurer le sous-réseau A pour qu'il utilise le résolveur Internet et VCN. De même, si vous voulez que l'instance B résolve le nom d'hôte de l'instance A, vous devez configurer le sous-réseau B pour qu'il utilise le résolveur Internet et VCN.
Vous pouvez configurer un jeu d'options DHCP différent pour chaque sous-réseau. Par exemple, vous pouvez régler le domaine de recherche du sous-réseau A à subneta.vcn1.oraclevcn.com
, ce qui signifie que toutes les instances de ce dernier ne peuvent utiliser que des noms d'hôte pour communiquer entre elles. Vous pouvez également régler le domaine de recherche du sous-réseau B à subnetb.vcn1.oraclevcn.com
pour permettre aux instances du sous-réseau B de communiquer entre elles uniquement avec des noms d'hôte.