Seite 1 von 1

Domäne auslesen

Verfasst: 21 Jun 2013, 08:56
von Stefan W
Guten Morgen zusammen,

gibt es ein Opsi-Befehl mit dem man die Domäne des Client auslesen kann? Über die Registry würde ich einen weg haben würde es nur schöner finden das über ein Befehl zu machen wenn es einen geben sollte.

Gruß
Stefan

Re: Domäne auslesen

Verfasst: 21 Jun 2013, 12:44
von d.oertel
Hi,

du meinst:
die Windows Domain (oder die DNS Domain) ?
einen Kommandozeilen Befehl auf dem opsi-server ?

gruß
d.oertel

Re: Domäne auslesen

Verfasst: 21 Jun 2013, 13:48
von Stefan W
Ich würde gerne die Windows Domain mit einem Opsi Befehl auslesen

Re: Domäne auslesen

Verfasst: 21 Jun 2013, 15:00
von uncle_scrooge
Vielleicht denke ich wieder zu simpel und habe das Problem nicht verstanden.
Aber warum nicht

set $MyDomain$ = EnvVar ("Userdomain")

?

Re: Domäne auslesen

Verfasst: 23 Jun 2013, 15:19
von d.oertel
Hi,
einen Kommandozeilen Befehl auf dem opsi-server ?
gruß
d.oertel

Re: Domäne auslesen

Verfasst: 25 Jun 2013, 12:51
von Stefan W
Ja mit einem Kommandozeilen Befehl

Re: Domäne auslesen

Verfasst: 25 Jun 2013, 13:40
von seteqsystems
ich checks nicht...

Die Domain des betreffenden Clients im Winst-Installationsskript kannst du so auslesen

Code: Alles auswählen

; liefert DEINEDOMAIN
set $MyDomain$ = EnvVar ("USERDOMAIN")

; liefert DEINEDOMAIN.LOCAL
set $MyDnsDomain$ = EnvVar ("USERDNSDOMAIN")
Auf der Linux-Kommandozeile des Servers kannst du den Domainnamen des Servers so anzeigen:

Code: Alles auswählen

hostname -d
Wenn du vom Server aus den aktuellen Domainnamen eines Clients anzeigen willst stelle ich mir die Frage, anhand welchen Kriteriums du den Client auswählen willst?

Den FQDN eines Clients kannst du anhand der IP-Adresse auf der Linux-Kommandozeile so ermitteln (sauberes DNS vorausgesetzt!):

Code: Alles auswählen

root@opsi4:/# host 10.4.99.12
12.99.4.10.in-addr.arpa domain name pointer wxptest01.seteq.local.
Noch Fragen?

Re: Domäne auslesen

Verfasst: 26 Jun 2013, 15:34
von islam
Auf Windows 7 getestet:

Code: Alles auswählen

NET CONFIG WORK
In der Konsole direkt "cmd.exe"

Code: Alles auswählen

FOR /f "tokens=2 delims= " %i in ('net config work ^| find /i "Arbeitsstationsdom"') do echo %i
In einem Batchskript (.cmd Datei)

Code: Alles auswählen

@echo off
FOR /f "tokens=2 delims= " %%i in ('net config work ^| find /i "Arbeitsstationsdom"') do echo %%i
pause

Re: Domäne auslesen

Verfasst: 31 Jul 2013, 15:09
von Stefan W
Sorry wenn ich das Thema noch einmal eröffne jedoch habe ich da noch mal eine Frage.
Ich habe mir ein Skript gebaut welches wie folgt aussieht:

Code: Alles auswählen

DefVar $MyDomain$
DefVar $dnsdomain$
DefVar $hostname$
DefVar $fqdn$

set $MyDomain$ = EnvVar ("USERDOMAIN")
set $hostname$ = EnvVar ("COMPUTERNAME")
set $dnsdomain$ = EnvVar ("USERDNSDOMAIN")
set $fqdn$ = $hostname$ + "." + $dnsdomain$  
Wenn ich dieses Skript local auf dem Client über den winst ausführe bekomme ich folgende Ausgabe:

Code: Alles auswählen

Set  $MyDomain$ = EnvVar ("USERDOMAIN")
[6] [Jul 31 15:03:57:626]   The value of the variable "$MyDomain$" is now: "xyc"
[5] [Jul 31 15:03:57:627] 
[5] [Jul 31 15:03:57:628] Set  $hostname$ = EnvVar ("COMPUTERNAME")
[6] [Jul 31 15:03:57:630]   The value of the variable "$hostname$" is now: "C462092"
[5] [Jul 31 15:03:57:631] 
[5] [Jul 31 15:03:57:633] Set  $dnsdomain$ = EnvVar ("USERDNSDOMAIN")
[6] [Jul 31 15:03:57:634]   The value of the variable "$dnsdomain$" is now: "xyc.DE"
[5] [Jul 31 15:03:57:636] 
[5] [Jul 31 15:03:57:637] Set  $fqdn$ = $hostname$ + "." + $dnsdomain$
[6] [Jul 31 15:03:57:639]   The value of the variable "$fqdn$" is now: "C462092.xyc.DE"
Wenn ich das Skript über den Opsi-Server ausführe bekomme ich folgende Meldung:

Code: Alles auswählen

Set  $MyDomain$ = EnvVar ("USERDOMAIN")
[6] [Jul 31 14:55:54:440] [computerinfo]   The value of the variable "$MyDomain$" is now: "xyc"
[5] [Jul 31 14:55:54:440] [computerinfo] 
[5] [Jul 31 14:55:54:440] [computerinfo] Set  $hostname$ = EnvVar ("COMPUTERNAME")
[6] [Jul 31 14:55:54:440] [computerinfo]   The value of the variable "$hostname$" is now: "C462092"
[5] [Jul 31 14:55:54:440] [computerinfo] 
[5] [Jul 31 14:55:54:440] [computerinfo] Set  $dnsdomain$ = EnvVar ("USERDNSDOMAIN")
[6] [Jul 31 14:55:54:440] [computerinfo]   The value of the variable "$dnsdomain$" is now: "/-!!- not found -!!-/"
[5] [Jul 31 14:55:54:440] [computerinfo] 
[5] [Jul 31 14:55:54:440] [computerinfo] Set  $fqdn$ = $hostname$ + "." + $dnsdomain$
[6] [Jul 31 14:55:54:440] [computerinfo]   The value of the variable "$fqdn$" is now: "C462092./-!!- not found -!!-/"
Hat jemand eine Idee woran das liegen könnte und was ich machen kann?

Vielen Dank schon mal

Re: Domäne auslesen

Verfasst: 19 Aug 2013, 15:52
von seteqsystems
Ganz einfache Antwort: Das OPSI-Script läuft unter dem lokalen SYSTEM-Account, und dort gibt es keine USERDNSDOMAIN ;)

Warum nimmst du nicht einfach die OPSI-Interne Variable %HostID% - die liefert dir wunderschön den full qualified Domainame des Rechners...

Alternative: DNS-Domain aus der Registry auslesen - und zwar unter: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Domain