Immer wieder kommt die Frage auf, an welchem PC in einer Domäne ein User angemeldet ist. Es gibt durchaus Möglichkeiten, z.B. mittels bginfo aus den sysinternal-tools dem User die Daten auf dem Arbeitsplatz anzeigen zu lassen. Der andere Weg, nämlich einen User anzupingen, ist hier beschrieben.
Die Einrichtung funktioniert so:
Eine Zone „users.domain.tld“ anlagen, secure only
Delegation in „domain.tld“ für die Zone „users“ einrichten
So sieht das dann in der DNS-Konsole aus:
Im DNS-Server, Eigenschaften, Sicherheit, Authentifizierte Benutzer leseberechtigt machen:
Logonskript mit dem folgenden Inhalt im netlogon oder einem Unterordner erstellen:
%0\..\dnscmd server /recordadd users.domain.tld %username%
CNAME %COMPUTERNAME%.domain.tld
(dnscmd.exe aus den Supporttools in dasselbe Verzeichnis kopieren)
Logoffskript mit dem folgenden Inhalt im netlogon oder einem Unterordner erstellen:
%0\..\dnscmd server /recorddelete users.domain.tld %username%
CNAME %computername%.domain.tld /f
(dnscmd.exe aus den Supporttools in dasselbe Verzeichnis kopieren)
Diese Dateien müssen für Auth. Benutzer lesbar und ausführbar sein.
„server“ durch einen DNS/DC Namen ersetzen
„domain.tld“ durch den Domänennamen ersetzen
Policy anlegen
Der Benutzer registriert jetzt bei der Anmeldung einen Alias, bei der Abmeldung wird der Alias deregistriert.
Per:
„ping Benutzer.users.domain.tld“ oder
„ping Benutzer.users“ (falls der Domainsuffix ok ist)
kann jetzt der Benutzername angepingt werden. Auf der Kommandzeile wird der Computername des angemeldeten Benutzers ausgegeben.
Wer es dann noch gemütlich haben möchte bastelt sich ein vb-script dazu: (domain.tld noch ändern, wer gerne möchte dass die cmd-Box wieder automatisch geschlossen wird, den Parameter /k in der letzten Zeile auf /c umbauen)
dim Username
dim DN
dim CNAME
dim fso
DN = „.users.domain.tld“
Username=inputBox („Bitte den Usernamen eingeben:“““)
CNAME = Username & DN
Set fso = CreateObject(„Wscript.Shell“)
fso.Run („cmd /k ping“ & “ “ & CNAME)