vendredi 27 février 2015

Configuration DNS Globalnamezone via powershell sur un serveur 2012

Bien le bonjour,

Aujourd'hui, un article sur l'implémentation d'une technologie apparue avec 2008 serveur, la globalnamezone (GNZ) et que l'on va configurer sur un windows serveur 2012 en powershell.

La GNZ permet de faire le même travail que le serveur WINS (ancêtre du DNS), c'est à dire effectuer une résolution de nom unique (nom simple, donc sans nom de domaine), une résolution de nom complétant le protocole Netbios dans les environnement multi-réseau physique.
Le but étant de définitivement supprimer ce service WINS qui est de plus en plus que ponctuellement utilisé.

Une fois la GNZ créée, il est nécessaire d'ajouter des enregistrements pour chaque nom devant être résolu par des vieux systèmes d'exploitation (NT4, 95, 98...).

#Je considère que le rôle DNS est installé
#Activez la GNZ
Set-DnsServerGlobalNameZone -Enable:$true

#Création de la GNZ
add-dnsserverprimaryzone -name GlobalNames -ReplicationScope forest -DynamicUpdate None

#Création d'un enregistrement
Add-DnsServerResourceRecordA -zone GlobalNames -name test -IPv4address 10.0.0.4

#Permet de privilégié la recherche dans la GNZ
set-DnsServerGlobalNameZone -GlobalOverLocal $true

Prochain article sur la gestion du vieillissement des enregistrements DNS via powershell.

Salutation, Guillaume

mercredi 25 février 2015

Création d'une zone primaire et secondaire sur un Windows serveur 2012

Bien le bonjour,

Un article sur la mise en place d'une zone primaire et secondaire sur un Windows serveur 2012 via powershell

#Rappel sur le fonctionnement DNS primaire/secondaire
Lors de la mise en place d'un serveur secondaire pour une zone, il est nécessaire que le primaire autorise le transfert de zone vers le secondaire.
Le secondaire possédera une copie en lecture seule de la zone primaire (aucune modification ne peut être effectuée à partir du secondaire sur la zone). Note : Ce principe ne s'applique pas si la zone est intégrée à Active Directory.
Les mises à jours de zone sont dépendantes du numéro de série qui s'incrémente à chaque modification dans la zone.
Pour la mise à jour de la zone, le serveur secondaire contacte le primaire et vérifie le numéro de série de la zone et le compare au numéro de série de la zone qu'il détient:
- Si le numéro de série du primaire est supérieur à celui du secondaire alors le secondaire demande un transfert de zone
- Si le numéro de série du primaire est inférieur et égal à celui du secondaire alors ce dernier ne fait pas de mise à jour.
Fonctionnement DNS primaire/secondaire
Fonctionnement DNS primaire/secondaire
##Information sur les éléments utilisés dans les commandes
#Serveur DNS primaire
Nom : srv-1.domaine.tld
IP : 10.0.0.10

#Serveur DNS secondaire
Nom : srv-2.domaine.tld
IP : 10.0.0.11

Nom de la zone DNS : domaine.tld


##Création d'une zone primaire directe stockée dans un fichier :
#Commandes à exécuter sur le serveur DNS primaire
Install-WindowsFeature DNS -IncludeManagementTools -IncludeAllSubFeature
Add-DnsServerPrimaryZone domaine.tld -ZoneFile domaine.tld.dns
#Ajouter un enregistrement NS pour le serveur DNS secondaire :
Add-DnsServerResourceRecord -NS -ZoneName domaine.tld -Name "." -NameServer srv2.domaine.tld
#Puis autoriser le transfert de zone et la notification vers les serveurs NS secondaires
Set-DnsServerPrimaryZone domaine.tld -SecureSecondaries TransferToZoneNameServer -Notify Notify

##Création d'une zone secondaire
#Commandes à exécuter sur le serveur DNS secondaire :
Install-WindowsFeature DNS -IncludeManagementTools -IncludeAllSubFeature
Add-DnsServerSecondaryZone domaine.tld -ZoneFile domaine.tld.dns -MasterServers 10.0.0.10
#Vérifier si le secondaire possède une copie des enregistrements de la zone 
Get-DnsServerResourceRecord domaine.tld
#Au besoin, forcer le transfert de zone
Start-DnsServerZoneTransfer -Name "domaine.tld"

Prochain article, Mise en place d'une globalname zone

Salutation, Guillaume

lundi 23 février 2015

Schéma de fonctionnement d'une résolution DNS avec une zone de stub

Bien le bonjour,

Aujourd'hui, petit point sur la zone de stub.
Le principe d'une zone de stub est de pouvoir contacter directement un serveur (NS) en charge de la zone.
Pour créer se type de zone, il faut le nom de la zone ainsi que l'ip d'un serveur (NS) DNS de la zone.
Cette commande permet de récupérer les serveurs NS de google.fr
Resolve-Dnsname -name google.fr -type NS

On l'utilise, tout comme le redirecteur conditionnel, souvent pour les relations d'approbations de domaine Active Directory.
Une zone de stub à la différence d'une zone secondaire ne nécessite pas une autorisation du serveur DNS primaire de la zone.
Une zone de stub ne contient que les enregistrements DNS suivant :
- SOA
- NS
- A permettant résoudre les noms associés aux SOA et NS

Schéma de fonctionnement d'une résolution DNS avec une zone de stub
Schéma de fonctionnement d'une résolution DNS avec une zone de stub

Prochain article, mise en place d'un serveur DNS primaire et secondaire dans un environnement Microsoft 2012 via powershell.

Salutation,
Guillaume

vendredi 20 février 2015

Schéma de fonctionnement d'une résolution DNS avec redirecteur conditionnel

Bien le bonjour,

Précédemment l'article portait sur le fonctionnement d'une résolution DNS avec redirecteur, je vais présenter le cas du fonctionnement d'une résolution DNS avec redirecteur conditionnel.
Un redirecteur conditionnel peut être utilisé pour faire en sorte que pour le domaine spécifié, un autre serveur DNS se charge de la requête.
Il est principalement utilisé pour les relations d'approbation dans un domaine Active Directory (cela permet de contacter directement un serveur DNS en charge de la zone) ou pour des raisons de sécurité.
Dans l'exemple un redirecteur conditionnel est définit sur le serveur local pour google.fr.
Toutes les requêtes DNS sont gérées par le serveur DNS local exceptées celle de google.fr qui sont renvoyées à un autre serveur DNS qui est en charge d'effectuer la requête.

Schéma de fonctionnement d'une résolution DNS avec redirecteur conditionnel
Schéma de fonctionnement d'une résolution DNS avec redirecteur conditionnel
Prochain article, fonctionnement de la zone de stub.

Salutation,
Guillaume

mercredi 18 février 2015

Schéma de fonctionnement d'une résolution DNS avec redirecteur

Bien le bonjour,

Après le schéma du fonctionnement d'une requête DNS classique, voici le schéma de la même requête mais un serveur DNS configuré en redirecteur.
Dans cette configuration, le serveur DNS se comporte comme un client DNS et demande à un autre serveur DNS de faire le travail.
La configuration d'un serveur DNS en redirecteur peut être utilisé :
- Pour des raisons de sécurité : seul 1 ou 2 serveurs DNS sont autorisés à effectuer des requêtes sur internet)
- Pour limiter les flux DNS sortants sur le net : Utile si vous vous retrouver avec plus de 50 serveurs DNS sur votre réseau (vive les formations systèmes et réseau) et que votre box/routeur déclare forfait face à tout cela (nombre de connexions maximales gérées atteintes, même pas un problème de bande passante...).

Schéma de fonctionnement d'une résolution DNS avec redirecteur
Schéma de fonctionnement d'une résolution DNS avec redirecteur

Prochain article, Schéma de fonctionnement d'une résolution DNS avec redirecteur conditionnel cette fois.

Salutation,
Guillaume

lundi 16 février 2015

Schéma de fonctionnement d'une résolution DNS classique

Bien le bonjour,

Voici un schéma illustrant les étapes d'une résolution DNS classique.
Le schéma ne prend pas en compte le cache DNS côté client et côté serveur DNS local.
Toutes les requêtes sont effectuées en UDP sur le port 53.

Schéma de fonctionnement d'une résolution DNS classique
Schéma de fonctionnement d'une résolution DNS classique
Prochain article, schéma de fonctionnement d'une résolution DNS avec un serveur DNS configuré en redirecteur.

Salutation,
Guillaume


vendredi 13 février 2015

Powershell DNS - Les commandes côté client

Bien le bonjour,

Pour aujourd'hui, un petit point sur les commandes powershell permettant de gérer le DNS côté client

#Afficher le cache DNS
Get-dnsclientcache

#Afficher les enregistrement du cache DNS issues du fichier hosts
Get-DnsClientCache -TimeToLive 86400
#Vider le cache dns
Clear-DnsClientCache

#Affiche la liste des suffixes DNS
Get-DnsClient

#Enregistrer l'ip au niveau du serveur DNS
Register-DnsClient

#Afficher la liste des serveurs dns
Get-DnsClientServerAddress

#Vérifier la résolution de nom
Resolve-Dnsname

#Effectuer une requête pour un type d'enregistrement précis
Resolve-Dnsname google.fr -type NS

#Effectuer une requête en n'utilisant que le DNS (pas d'utilisation du cache, du netbios ou LLMNR)
Resolve-DnsName www.google.fr -dnsOnly

#Effectuer une requête en n'utilisant DNSSEC
Resolve-DnsName www.google.fr -dnssecok

Pour le reste get-help Resolve-DnsName

Prochain article, schéma des étapes d'une résolution DNS classique

Salutation,
Guillaume

mercredi 11 février 2015

Utiliser la cmdlet powershell test-netconnection

Bien le bonjour,

La commandlet test-netconnection permet en plus de pinger, de vérifier les ports tcp et et d'effectuer un traceroute, tout en affichant plus d'informations que test-connection.

#Vérifier la connectivité internet du poste courant
test-netconnection

#Vérifier la connectivité internet d'un poste spécifique
test-netconnection srv-1.domaine.tld

#Vérifier la connectivité internet d'un poste spécifique avec des informations détaillées
test-netconnection srv-1.domaine.tld -informationlevel detailed

#Vérifier la connectivité réseau en n'affichant en renvoyant $true ou $false
test-netconnection srv-1.domaine.tld -informationlevel quiet

#Vérifier l'accessibilité d'un service (seulement SMB, HTTP et RDP disponibles)
test-netconnection www.domaine.tld -CommonTCPPort HTTP

#Vérifier l'accessibilité d'un service TCP
test-netconnection www.domaine.tld -Port 80

#Effectuer un traceroute
test-netconnection www.google.fr -traceroute

Pour le reste get-help test-netconnection est votre ami.

Prochain article sur les commandes powershell liées au DNS côté client.

Salutation,
Guillaume

lundi 9 février 2015

Utiliser la cmdlet powershell test-connection

La commandlet test-connection est un "équivalent" de la commande ping

#Vérifier la connectivité réseau
test-connection srv-1.domaine.tld

#Vérifier la connectivité réseau de plusieurs postes
test-connection srv-1,srv-2,srv-3

#Vérifier la connectivité réseau en spécifiant 1 requête ICMP
test-connection srv-1.domaine.tld

#Vérifier la connectivité réseau en n'affichant pas les erreurs lorsque les postes sont indisponibles (renvoi  $true ou $false)
test-connection srv-1,srv-2,srv-3 -quiet

#Exemple d'utilisation
#Lister les postes de l'Active Directory et effecture une action sur les postes
$computers = Get-ADComputer -filter *
$computers.name | foreach {
if (Test-Connection $_ -Count 1 -Quiet ) {
#effectuer l'action ou le test désiré sur le poste en ligne
                                            }
                            } 

Pour le reste, je vous laisse regarder l'aide.

Prochaine article sur la cmdlet test-netconnection apparue avec powershell v4.