Home  Previous page


Comment mesurer le temps de réponse des serveurs DNS (FR)

Cet article a été créé pour partager avec vous comment c’est possible de mesurer le temps de réponse de vos serveurs DNS quand vous effectuez des résolutions DNS. Cette tâche peut simplement être faite en utilisant Windows PowerShell et en combinant l’utilisation des cmdletsMeasure-CommandetResolve-DnsName.

Si vous souhaitez mesurer le temps de réponse d’un serveur DNS, vous pouvez exécuter le script suivant:

#####################Variables#####################

$numberoftests=10

###################################################

#####################Main#####################

cls

$dnsserver="8.8.8.8"

$totalmeasurement=0

$i=0

while($i-ne$numberoftests)

{

$measurement=(Measure-Command{Resolve-DnsName www.bing.com -Server$dnsserver–Type A}).TotalSeconds

$totalmeasurement+=$measurement

$i+=1

}

$totalmeasurement=$totalmeasurement/$numberoftests

"DNS Server: "+$dnsserver+", Response time: "+$totalmeasurement+" seconds"


Le script exécute ce qui suit:
  • Il interroge votre serveur DNS que vous avez spécifié comme valeur de la variable$dnsserverafin d’obtenir l’enregistrement A de www.bing.com Jump (Vous pouvez ajuster la requête DNS si vous le souhaitez)
  • Il interroge le serveur DNS avec le number de fois qui est spécifié comme valeur de la variable$numberoftests
  • Il mesure et affiche la moyenne du temps de traitement du serveur DNS
Important: Plus le nombre que vous avez spécifié comme valeur de la variable$numberoftestsest élevé, plus les résultats obtenus sont fiables.

Ci-dessous un imprime écran des résultats obtenus en exécutant le script:



Si vous utilisez un domaine Active Directory et si vos contrôleurs de domaine sont des serveurs DNS, vous pouvez utiliser le script suivant pour effectuer les mêmes mesures sur tous serveurs du domaine :

#####################Variables#####################

$numberoftests=10

###################################################

#####################Main#####################

cls

$myForest=[System.DirectoryServices.ActiveDirectory.Forest]::GetCurrentForest()

$domaincontrollers=$myforest.Sites |%{$_.Servers } |SelectName

foreach($DomainControllerin$DomainControllers)

{

$totalmeasurement=0

$i=0

while($i-ne$numberoftests)

{

$measurement=(Measure-Command{Resolve-DnsName www.bing.com -Server$DomainController.name –Type A}).TotalSeconds

$totalmeasurement+=$measurement

$i+=1

}

$totalmeasurement=$totalmeasurement/$numberoftests

"Domain Controller: "+$DomainController.name+", Response time: "+$totalmeasurement+" seconds"

}


Autres langues

Cet article est disponible dans d'autres langues.