CLI – dnscmd

Utilisation de l’utilitaire DNSCMD en ligne de commande pour gérer les enregistrements DNS

liens Technet :http://technet.microsoft.com/en-us/library/cc772069.aspx

Recherche d’enregistrement

Recherche d’un enregistrement de type « A » dans un environnement multi-domaine

Lister dans un fichier les domaines DNS AD, exemple avec un fichier « list.txt » contenant:

dom1.mondomaineAD.com
dom2.mondomaineAD.com
dom3.mondomaineAD.com

Effectuer une boucle for sur le fichier list pour rechercher l’enregistrement dans un de ces domaines:

for /F %i in (list.txt) do dnscmd %i /enumrecords %i @ /type A | find "xxxx"

chercher un enregistrement de type « A »

dnscmd <dns_server_name> /enumrecords <domain_zone> @ /type A | findstr /i "ip_recherché"

Chercher un alias – enregistrement de type « CNAME »

dnscmd <dns_server_name> /enumrecords <domain_zone> @ /type cname | findstr /i "alias recherché"

Ajout d’enregistrement

Ajouter un alias d’un nom de machine dans une zone DNS

dnscmd <dns_server_name> /recordadd <domain_zone> <alias_name> CNAME <hostname>

Ajouter un enregistrement de service _ldap pour Catalogue Global (par exemple)

dnscmd <dns_server_name> /recordadd <domain_zone> _ldap._tcp.gc SRV 0 100 3268 <domain>

Suppression d’enregistrement

dnscmd <dns_server_name> /recorddelete <domain_zone> @ <type_RR> /f

exemple, si on veut supprimer un enregistrement de nom de machine dans la zone reverse « 192.168″:

dnscmd <dns_server_name> /recorddelete 168.192.in-addr.arpa. @ NS <hostname> /f

Modification de la configuration

Ajout de « conditional forwarder »

dnscmd <dns_server_name> /ZoneAdd <domain_zone> /Forwarder <ip1> <ip2>

Reset d’un « Conditional forwarder »

dnscmd <dns_server_name> /ZoneResetMasters <domain_zone> [<ServerIPs>]

Ajouter des « forwarder »

dnscmd <dns_server_name> /resetforwarders <ip1> <ip2> /timeout 3

Problèmes alias DNS et imprimantes avec Windows 2008 R2 – Operation could not be completed (error 0×00000709)

Erreur rencontré avec les alias DNS sous Windows 2008 R2 et les imprimantes.
DESCRIPTION DU PROBLEME :
Mon client souhaitait utiliser des noms génériques pour le mappage de ses imprimantes sur les serveurs et les stations de travail. Je rappelle à tous que l’on ne peut pas accéder aux partages de fichiers et d’imprimantes via un alias DNS (message d’erreur « nom réseau en double ») sans ajouter la valeur de registre DisableStrictNameChecking sur le serveur de partage de fichiers / imprimantes.
Pour plus d’informations, voir :
http://support.microsoft.com/kb/281308

Avec Windows 2008 R2 (une fois la clé DisableStrictNameChecking définie), l’accès aux partages de fichiers / imprimantes est fonctionnel mais il n’est plus possible d’ajouter des nouvelles imprimantes avec un alias DNS. On obtient le message d’erreur suivant :
Operation could not be completed (error 0×00000709). Double check the printer name and make sure that the printer is connected to the network.

Au niveau des observateurs d’événements sur le serveur d’impression, le message d’erreur apparaît à chaque tentative d’ajout d’une imprimante via un alias DNS depuis une station de travail :
Nom du journal :System Source :       LsaSrv Date :         19/07/2010 11:57:53
ID de l’événement :6037 Catégorie de la tâche :Aucun
Niveau :       Avertissement Mots clés :    Classique Utilisateur :  N/A Ordinateur :   print.msreport.local
Description : Le programme spoolsv.exe, avec l’ID de processus 1152, n’a pas pu s’authentifier localement à l’aide du nom de cible host/print.msreport.local. Le nom de cible utilisé n’est pas valide. Un nom de cible doit faire référence à l’un des noms d’ordinateurs locaux, par exemple, le nom d’hôte DNS. Essayez un autre nom de cible.

SOLUTION : Il faut ajouter la clé DnsOnWire sur un serveur Windows 2008 R2 pour pouvoir se connecter à une imprimante avec un alias DNS.
Pour cela, taper la commande suivante :

reg add HKLM\SYSTEM\CurrentControlSet\Control\Print /v DnsOnWire /t REG_DWORD /d 1

Pour plus d’informations :
http://support.microsoft.com/kb/979602
http://social.technet.microsoft.com/Forums/en-US/winserverprint/thread/00eeb192-d03a-4d1b-9066-427fc678ae97

Kerberos lister un fichier keytab sous Windows

Comment lister le contenu d’un fichier keytab sous Windows. L’outil klist de Windows ne permet que d’afficher ou de purger les tickets Kerberos.

Pour vérifier un fichier keytab, il faut installer les outils « MIT Kerberos for Windows »; dispo en téléchargement ici

Une fois installés, on les trouve dans le répertoire « c:\Program Files\mit\Kerberos\bin\ » qu’on peut ajouter à la variable système PATH si besoin.

Pour lister le contenu d’un fichier keytab:

"c:\Program Files\mit\Kerberos\bin\klist.exe" -K -e -k fichier.keytab
Usage: klist [-5] [-4] [-e] [[-c] [-f] [-s] [-a [-n]] [-u]] [-k [-t] [-K]] [name]
 -5 Kerberos 5 (available)
 -4 Kerberos 4 (available)
 (Default is Kerberos 5)
 -c specifies credentials cache
 -C specifies and enumerates all credentials caches
 -k specifies keytab
 (Default is credentials cache)
 -e shows the encryption type
 options for credential caches:
 -f shows credentials flags
 -s sets exit status based on valid tgt existence
 -a displays the address list
 -n do not reverse-resolve
 options for keytabs:
 -t shows keytab entry timestamps
 -K shows keytab entry DES keys

exemple:

klist

Liste des KB avec wmic

Pour lister les mise à jour installées sur un système Windows, on peut utiliser la commande wmic

wmic qfe list

Pour faire une recherche précise sur un KB:

wmic qfe list |findstr /i "KBxxxxxxx"

wmic-qfe-get

Pour une requete plus précise, il est possible d’ulitiser les noms des propriétés:

wmic qfe get csName,HotFixID

wmic-qfe-list