Comment utiliser PowerShell avec des enregistrements DNS: le moyen le plus simple – Bien choisir son serveur d impression
Les enregistrements DNS sont généralement gérés de manière dynamique par votre serveur DNS. Toutefois, vous constaterez parfois que vous devez créer, modifier ou supprimer manuellement divers types d’enregistrements DNS. Ou même ajouter diverses tâches DNS aux scripts d'automatisation. C’est parfois à ce moment-là que l’utilisation de PowerShell pour les enregistrements DNS est la solution.
Ce billet de blog contient une vidéo d'accompagnement créée par David Lamb, un contributeur de TechSnips. N'hésitez pas à avoir une montre ou, si vous préférez du texte, poursuivez votre lecture!
Affichage des enregistrements DNS
Vous pouvez afficher tous les enregistrements de ressources pour une zone DNS donnée en utilisant simplement PowerShell.Get-DnsServerResourceRecord
cmdlet. À l'aide de cette cmdlet, vous pouvez spécifier le NomZone
paramètre qui listera tous les enregistrements DNS de cette zone.
Comme vous pouvez le voir ci-dessous, cela génère une longue liste d'enregistrements.
PS51> Get-DnsServerResourceRecord -ZoneName corp.ad
Ce comportement met en évidence l'un des avantages de cette cmdlet par rapport à la console DNS graphique. La vue affiche tous les enregistrements de cette zone, quel que soit le dossier dans lequel ils se trouvent. Dans la console graphique, il faudrait un certain temps pour rassembler ces informations.
Maintenant éclaircissez un peu cette liste. En utilisant la même cmdlet, mais en ajoutant le RRType
paramètre pour rechercher les enregistrements A (hôtes IPv4) et filtrer les enregistrements où Temps de vie (TTL) est supérieur à 15 minutes nous donne un peu plus d'une liste gérable. Vous pouvez utiliser le Où-objet
cmdlet pour filtrer de nombreuses propriétés d'enregistrement DNS différentes.
PS51> Get-DnsServerResourceRecord -ZoneName corp.ad -RRType A | Où-objet TimeToLive -GE "00:15:00"
Pour aller plus loin, vous pouvez également rechercher des enregistrements dans une zone DNS différente et même sur des serveurs DNS différents.
Dans l'exemple ci-dessous, nous rechercherons les enregistrements A dans le répertoire canada.corp.ad zone sur le serveur DNS DC03
PS51> Get-DnsServerResourceRecord -ComputerName DC03 -ZoneName canada.corp.ad -RRType A
Ajout et suppression d'un enregistrement d'hôte
Pour ajouter un enregistrement d’hôte, vous devrez utiliser le Add-DnsServerResourceRecordA
cmdlet. Dans cet exemple ci-dessous, vous devez ajouter un enregistrement d'hôte pour une nouvelle imprimante que vous ajoutez au réseau. Il sera ajouté à la zone corp.ad avec le nom reddeerprint01, et son adresse IP est 192.168.2.56.
PS51> Add-DnsServerResourceRecordA -Name reddeerprint01 -ZoneName corp.ad -IPv4Address 192.168.2.56
PS51> Get-DnsServerResourceRecord -ZoneName corp.ad -RRType A
S'il s'avère que vous devez supprimer un enregistrement, peut-être que l'imprimante a été mise hors service, vous pouvez utiliser le code suivant pour supprimer l'enregistrement hôte que nous venons de créer:
PS51> Remove-DnsServerResourceRecord -ZoneName corp.ad -Name reddeerprint01 -RRType A
Ajout et suppression d'enregistrements d'hôte AAAA
Il est également tout aussi facile d’ajouter un enregistrement d’hôte IPv6. Bien entendu, ces enregistrements diffèrent légèrement, car ils sont répertoriés comme des enregistrements AAAA. Vous remarquerez peut-être que nous utilisons maintenant le Add-DnsServerResourceRecordAAAA
cmdlet. C'est un changement subtil, mais important.
Ajouter un enregistrement à la corp.ad zone pour le nouveau serveur informatique intranet à fc00: 0128, puis vérifiez rapidement qu’il a été créé à l’aide de la commande suivante.
PS51> Add-DnsServerResourceRecordAAAA -Name it-intranet -ZoneName corp.ad -IPv6Address "fc00 :: 0128"
PS51> Get-DnsServerResourceRecord -ZoneName corp.ad -RRType AAAA
Ajout d'enregistrements de recherche inversée (PTR)
En utilisant PowerShell avec des enregistrements DNS, vous pouvez également ajouter des enregistrements PTR. Un enregistrement de recherche inversée permet au client d'interroger un serveur DNS pour demander le nom d'hôte pour une adresse IP fournie.
La création d’un enregistrement PTR est un processus relativement simple, mais vous devez connaître un élément d’information important avant de commencer à ajouter des enregistrements PTR. Les zones de recherche inversée ne sont pas créées par défaut. Vous devrez configurer votre zone de recherche inversée avant d'ajouter des enregistrements. Heureusement, c'est relativement facile à faire.
Création d'une zone DNS
Utilisez le Add-DnsServerPrimaryZone
cmdlet pour créer une nouvelle zone DNS. Dans ce cas, puisque vous créez une zone de recherche inversée, fournissez-lui l'ID de réseau.
Dans cet exemple, j'ai également choisi de définir la portée de la réplication sur la totalité de la forêt AD et j'ai spécifiquement ciblé DC03 en tant que serveur DNS préféré:
PS51> Add-DnsServerPrimaryZone -ComputerName DC03 -NetworkId "192.168.2.0/24" -ReplicationScope Forest
PS51> Get-DnsServerZone -ComputerName DC03
Maintenant que la zone de recherche inversée est en place, vous pouvez ajouter un enregistrement PTR pour une nouvelle imprimante appelée CYQF-Printer-01.canada.corp.ad qui a une adresse IP de 192.168.2.56. Comme ce disque est pour le canada.corp.ad zone, vous ciblerez le serveur DNS DC03.
Maintenant que la zone est créée, créons un enregistrement PTR en utilisant le Add-DnsServerResourceRecordPtr
commander. Lorsque vous utilisez cette applet de commande, il est important de noter quelques éléments.
- Vous devez spécifier le nom de la zone à l'aide de l'ID de réseau dans l'ordre inverse, puis ajouter .in-addr.arpa. Donc pour notre 192.168.2.0/24 ID réseau, le nom de la zone est 2.168.192.in-addr.arpa.
- le
Nom
paramètre est la partie hôte de l'adresse IP. Pour notre imprimante au 192.168.2.56, leNom
est 56.
Une fois que vous avez ces informations, le code requis pour créer l'enregistrement PTR est relativement simple, même s'il est un peu long:
PS51> Add-DnsServerResourceRecordPtr `
-Name "56" `
-PtrDomainName "CYQF-Printer-01.canada.corp.ad" `
-ZoneName "2.168.192.in-addr.arpa" `
-nom_ordinateur DC03
PS51> Get-DnsServerResourceRecord -ComputerName DC03 -ZoneName "2.168.192.in-addr.arpa"
Ajouter des alias (CNAME)
Pour terminer ce didacticiel, créez un enregistrement d’alias d’hôte ou CNAME à l’aide du Add-DnsServerResourceRecordCName
cmdlet.
Ces enregistrements vous permettent de spécifier un alias pour un enregistrement d'hôte existant dans la zone. Cela devient particulièrement utile, par exemple, si vous souhaitez fournir à vos utilisateurs financiers une adresse pour leur application de gestion Web.
Vous pouvez créer un alias appelé la finance, et pointez le sur le serveur web webapp25.corp.ad. Une fois que l'application est migrée vers le nouveau serveur Web avec un nouveau nom d'hôte, vous devez alors modifier l'enregistrement CNAME en pointeur. la finance qui pointe vers le nouvel hôte. De cette façon, les utilisateurs ne doivent pas mettre à jour leurs signets. Ils peuvent continuer à accéder à leur application en utilisant l'adresse finance.corp.ad.
PS51> Add-DnsServerResourceRecordCName -ZoneName corp.ad -HostNameAlias "webapp25.corp.ad" -Name "finance"
PS51> Get-DnsServerResourceRecord -ZoneName corp.ad -RRType CName
Si vous souhaitez approfondir votre connaissance du DNS et voir des fonctionnalités plus avancées, assurez-vous de consulter toutes les autres publications DNS ici.
Sommaire
Ceci conclut notre tutoriel sur l’utilisation de PowerShell avec des enregistrements DNS. Avec les connaissances que vous avez accumulées ici, vous devriez maintenant être en mesure de gérer de manière interactive ou même d’automatiser de larges pans d’enregistrements DNS si vous le souhaitez!
Abonnez-vous à Adam the Automator
Recevez les derniers messages directement dans votre boîte de réception
Commentaires
Laisser un commentaire