IP-Adresse remote ändern per script
Hallo,
wir führen bei unserer Firma ein ReIP durch. Dazu müssen wir die statischen IP-Adressen auf allen Servern ändern.
Um sich jetzt nicht mit jedem Server (Anzahl > 100) remote zu verbinden und dann die IP-Adresse zu ändern, habe ich ein WMI script erstellt, mit dem man die IP-Adresse remote ändern kann. Dazu gab es auch entsprechende Vorlangen im Netz.
Funktioniert soweit auch alles gut. Das Problem ist jedoch, dass man ja nach der IP-Änderung die Verbindung zum Server verliert und das Script sich dadurch nicht mehr korrekt beendet. (Lässt sich dann nur noch mit Strg C abbrechen)
Hat jemamd eine Idee, wie man das Script nach Verbindungsabbruch noch automatisch beenden kann? Timeout über cscript hat nicht funktioniert... Schon mal Danke!
Das Script sieht für die IP-Änderung folgendermaßen aus:
wir führen bei unserer Firma ein ReIP durch. Dazu müssen wir die statischen IP-Adressen auf allen Servern ändern.
Um sich jetzt nicht mit jedem Server (Anzahl > 100) remote zu verbinden und dann die IP-Adresse zu ändern, habe ich ein WMI script erstellt, mit dem man die IP-Adresse remote ändern kann. Dazu gab es auch entsprechende Vorlangen im Netz.
Funktioniert soweit auch alles gut. Das Problem ist jedoch, dass man ja nach der IP-Änderung die Verbindung zum Server verliert und das Script sich dadurch nicht mehr korrekt beendet. (Lässt sich dann nur noch mit Strg C abbrechen)
Hat jemamd eine Idee, wie man das Script nach Verbindungsabbruch noch automatisch beenden kann? Timeout über cscript hat nicht funktioniert... Schon mal Danke!
Das Script sieht für die IP-Änderung folgendermaßen aus:
*****************************************************************
'Änderung der DNS-, WINS-Server, Default Gateway und IP-Adresse
'Parameter übergeben (als Administrator)
'Eingabe über cmd -> "cscript //Nologo script.vbs alte_IP neue_IP"
strComputer = Wscript.Arguments(0)
strComputer1 = Wscript.Arguments(1)
'IP-Adresse und Gateway festlegen
On Error Resume Next
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colNetAdapters = objWMIService.ExecQuery ("Select * from Win32_NetworkAdapterConfiguration " & "where IPEnabled=TRUE ")
strIPAddress = Array(strComputer1)
strSubnetMask = Array("255.255.252.0")
strGateway = Array("192.168.x.y")
strGatewayMetric = Array(1)
For Each objNetAdapter in colNetAdapters
If Not IsNull(IPConfig.IPAddress) Then
For i= LBound(IPConfig.IPAddress) to UBound(IPConfig.IPAddress)
if objNetAdapter.IPAddress(i) = strComputer Then
WScript.Echo objNetAdapter.IPAddress(i)
WScript.Echo strComputer
errGateways = objNetAdapter.SetGateways(strGateway, strGatewaymetric)
errEnable = objNetAdapter.EnableStatic(strIPAddress, strSubnetMask) 'HIER WIRD IP GEÄNDERT!!!!
end if
Next
End if
Next
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 82451
Url: https://administrator.de/contentid/82451
Ausgedruckt am: 20.11.2024 um 11:11 Uhr
2 Kommentare
Neuester Kommentar