redcell01
Goto Top

Skript je nach Netzwerkumgebung automatisiert anpassen

Hallo,

ich habe eine Win 2008 Server Domäne mit 2 Standorten. Einige User haben Laptops und arbeiten in beiden Betrieben.
Ich möchte erreichen, dass die Mitarbeiter sich immer mit dem gleichen Benutzerkonto in Win7 einloggen, je nach Standort aber verschiedene/andere Netzlaufwerke verbunden werden.

Den Laptops habe ich mittels GPO ein Skript "Laptop" zugewiesen.
Jetzt geht es an den Inhalt:

Wie schaffe ich es, dass das Skript am Anfang prüft unter welcher Netzwerkumgebung sich der Laptop gerade befindet?
Beide Netze sind unterschiedlich. Die Laptops bekommen mittels DHCP eine IP zugewiesen.

Kann man mittels einer IF-Definition dies löschen?

Z.B.: IF "subnetzmaske" = 255.255.255.0 GOTO XXX

Ich weiß leider nicht die genaue Syntax.

Kann mir jemand helfen?

Grüße
Christian

Content-ID: 230543

Url: https://administrator.de/contentid/230543

Ausgedruckt am: 17.11.2024 um 02:11 Uhr

byterunner
byterunner 20.02.2014 um 19:07:28 Uhr
Goto Top
Hi,
Verknüpfe die gpo mit einem wmi Filter.
(Logon Server, AD Standort, Netzwerkadapter etc.)

Gruß
Byterunner
Clijsters
Clijsters 20.02.2014 aktualisiert um 19:10:57 Uhr
Goto Top
[EDIT]
Was Byterunner sagt, klingt am saubersten. Kam leider, während ich das hier getippselt habe.
[/EDIT]

Hallo Christian,

mehrere Wege führen nach Rom.

Ein Batch-Schnipsel wie der
set str =  IPv4-Adresse
for /f "usebackq tokens=2 delims=:" %%f in (`ipconfig ^| findstr /c:%str%`) do echo IP: %%f  
tut das schon. Problematisch wird es bei unterschiedlichen Betriebssystemen / Sprachen.
Bei XP wäre %str% = IP-Adresse
im Englischen %str% = IP-Address etc...

Die PowerShell kann ab Windows 8.1 Get-NetIPAddress.


Eine weitere Option:
set str = Addresses
for /f "usebackq tokens=2 delims=:" %%f in (`nslookup %computername%^| findstr /c:%str%`) do echo IP: %%f  

Oder VBS: kommt hierher
Set NIC1 = GetObject("winmgmts:").InstancesOf("Win32_NetworkAdapterConfiguration")  
For Each Nic in NIC1
	if Nic.IPEnabled then
		StrIP = Nic.IPAddress(i)
		Set WshNetwork = WScript.CreateObject("WScript.Network")  
		CompName= WshNetwork.Computername
		MsgBox "IP Address: "&StrIP & vbNewLine _  
		& "Computer Name: "&CompName,4160,"IP Address and Computer Name"  
		wscript.quit
	end if
next
Das sind natürlich nur ein paar Beispiele und Möglichkeiten. Die Schnipsel sind ungetestet.

Beste Grüße
Dominique
emeriks
emeriks 20.02.2014 um 21:17:51 Uhr
Goto Top
Hi,
wenn Ihr mehrere Standorte habt, dann solltet Ihr auch je Standort ein Standort-Objekt incl. Subnet-Objekt(e) im AD haben. Da wäre es doch am einfachsten, ke Standort eine GPO zu erstellen, diese an das jeweilige Standort-Objekt verlinken und in der GPO jeweils das zum Standort passende Script zu startet, bzw. in diesem Beispiel gleich mit der GPO die Laufwerke zu verbinden.

E.