d00mer
Goto Top

IP Adresse bei jedem Neustart ändern?

Hallo,
ich bin auf der Suche nach einem VBS Scipt, das nach jedem Neustart die IP-Adresse meiner Netzwerkkarte ändert.
(Ja, das Vieh darf sich auch in die Reg einnisten face-smile)
Hat sowas zufällig jemand im Ärmel? ;)


Danke und Gruß


P.S. Ich geb auch nen virtuelles Bier aus ;)

Content-Key: 80109

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

Printed on: April 23, 2024 at 13:04 o'clock

Member: bastla
bastla Feb 07, 2008 at 15:58:28 (UTC)
Goto Top
Hallo d00meR!

Hier sollte etwas für Dich dabei sein ...

Grüße
bastla
Member: d00meR
d00meR Feb 07, 2008 at 18:19:03 (UTC)
Goto Top
Hi,
danke erstmal für deine Mühe, aber ich glaub ich hab mich nicht klar genug ausgedrückt.

Ich möchte kein DHCP verwenden, d.h. ich suche ein Script welches mir bei jedem Neustart
eine NEUE STATISCHE IP-Adresse gibt. Und das Script darf sich dann auch logischerweise in der
Registrierung einnisten ;)

Hoffe nun ists klarer, so! :P


Gruß d00meR *mitdemFreibierwedel*
Member: bastla
bastla Feb 07, 2008 at 18:57:05 (UTC)
Goto Top
Hallo d00meR!

ich glaub ich hab mich nicht klar genug ausgedrückt.
Ich glaube, Du hast nicht bis Listing 23 (oder 24) gelesen ...

Ansonsten stellt sich noch die Frage: Welche neue IP soll's denn jeweils werden? Zufallszahl, Pool, ...

Grüße
bastla
Member: d00meR
d00meR Feb 07, 2008 at 20:11:59 (UTC)
Goto Top
Hallo bastla,

doch, hab ich. Ich bräucht aber nen Script was mir die IP-Adresse aus nem Pool (192.168.1.10-192.169.1.20) gibt.

Grüße d00meR
Member: bastla
bastla Feb 07, 2008 at 20:44:33 (UTC)
Goto Top
Hallo d00meR!

IP-Adresse aus nem Pool (192.168.1.10-192.169.1.20)
Nach welchem Kriterium soll die Adresse ausgewählt werden bzw wie verwaltest Du den Pool?

Grüße
bastla
Member: d00meR
d00meR Feb 07, 2008 at 22:06:07 (UTC)
Goto Top
Servus,

egal. Der Computer soll nur nach jeden Neustart den er bekommt, ne neue IP-Adresse aus dem genannten Pool bekommen. Random einfach =)
Member: bastla
bastla Feb 07, 2008 at 22:34:12 (UTC)
Goto Top
Hallo d00meR!

Nur nochmal zur Sicherheit: 192.168.1.10 - 192.169.1.20?

Grüße
bastla
Member: d00meR
d00meR Feb 08, 2008 at 03:03:42 (UTC)
Goto Top
Nein, Sorry! Da hab ich mich verschrieben: 192.168.1.10 - 192.168.1.20 sollte es natürlich heißen.
Danke das du nochmal gefragt hast ;)
Member: bastla
bastla Feb 08, 2008 at 06:25:35 (UTC)
Goto Top
Hallo d00meR!

Dann könntest Du es so versuchen:
strComputer = "."  
strNet = "192.168.1"  
arrSubnetMasks = Array("255.255.255.0")  
 
Randomize

Set objWMIService = GetObject("winmgmts:" _  
 & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")  
Set colNicConfigs = objWMIService.ExecQuery _
 ("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = True")  
 
For Each objNicConfig In colNicConfigs
	arrOldIPAddresses = objNicConfig.IPAddress
	If IsArray(arrOldIPAddresses) Then
		strOldIPAddress = arrOldIPAddresses(0)
	Else
		strOldIPAddress = arrOldIPAddresses
	End If
	
	DOld = Mid(strOldIPAddress, InStrRev(strOldIPAddress, ".") + 1)  
	DNew = CStr(Int(Rnd * 11) + 10)
	Do Until DNew <> DOld
		DNew = CStr(Int(Rnd * 11) + 10)
	Loop 
	
	strNewIPAddress = strNEt & "." & DNew  
	arrIPAddresses = Array(strNewIPAddress)
	
	WScript.Echo "Adresse für " & objNicConfig.Description & VbCrLF & _  
		"wird geändert von " & strOldIPAddress & " auf " & strNewIPAddress  
	intReturn = objNicConfig.EnableStatic(arrIPAddresses, arrSubnetMasks)
	If intReturn > 1 Then WScript.Echo intReturn & ": IP-Adresse konnte nicht geändert werden!"  
Next
Wie Du das Script startest (per "Registrierungseinnistung" - klingt irgendwie nach "Regierungeinnistung" und erinnert dann an "Bundestrojaner" face-wink), über den Autostart (die Umstellung wirkt ohnehin sofort und nicht erst nach einem Neustart) oder per GroupPolicy möchte ich Dir überlassen - und natürlich auch die Frage, ob die "WScript.Echo"-Zeile eine gute Idee ist ...

Grüße
bastla
Member: d00meR
d00meR Feb 08, 2008 at 18:33:49 (UTC)
Goto Top
Du bist wirklich ein "bastla" ;)

Danke Dir, hast mir wirklich sehr geholfen... Das Einzige was du noch einbauen könntest, wäre vllt. die spezielle Angabe einer Netzwerkschnittstelle, weil so versucht das Script alle IP-Adressen aller Geräte zu ändern. In meinem Fall ist das egal, aber vielleicht interessiert das hier ja noch jemanden.

Dank dir nochmals sehr, das virtuelle Freibier gehört natürlich dir *Bierreich* und vorallem ein schönes Wochenende, so wie sie es angesagt haben face-smile

Gruß d00meR
Member: bastla
bastla Feb 08, 2008 at 19:32:31 (UTC)
Goto Top
Hallo d00meR!

Das Einzige was du noch einbauen könntest, wäre vllt. die spezielle Angabe einer Netzwerkschnittstelle
Wenn das Script nur auf einem bestimmten Rechner laufen soll, kein Problem - dazu muss ja nur die "objNicConfig.Description" mit dem bekannten Namen der betreffenden Schnittstelle verglichen und nur bei Übereinstimmung die Adressänderung ausgeführt werden, also etwa
For Each objNicConfig In colNicConfigs
	If objNicConfig.Description = "Marvell Yukon 88E8039 PCI-E Fast Ethernet Controller" Then  
		...
		...
	End If
Next
das virtuelle Freibier gehört natürlich dir
Danke, werde es aber gelegentlich weitergeben (ich meide auch die RL-Version face-wink).

Grüße
bastla
Member: d00meR
d00meR Feb 11, 2008 at 22:02:42 (UTC)
Goto Top
Danke bastla, klappt wonderbra!