Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

IP Config über vbs setzen

Mitglied: capct1

capct1 (Level 1) - Jetzt verbinden

11.09.2007, aktualisiert 16.10.2007, 8373 Aufrufe, 8 Kommentare

Hallo, ich möchte über ein VBS-Script die IP Configuration von einem/mehreren Rechnern schnell und ohne Tippfehler vornehmen.
Ich habe da schon einiges hinbekommen, aber nun hab ich beim setzen der Werte so meine Probleme. Evt. kann mir jemand helfen, denke das wir auch noch andere Interessieren.

'Konfiguration der festen Werte
IPFW1 = "193.31.235." ' IP-Adresse FW1
IPFW2 = "172.16.14." ' IP-Adresse FW2
IPFW3 = "172.16.11." ' IP-Adresse FW3

'Dim strSubnet
' strSubnet = "255.255.255.0"



strGatewayFW1 = "193.31.235.229" ' Gateway FW1
strGatewayFW2 = "172.16.14.229" ' Gateway FW2
strGatewayFW3 = "172.16.14.229" ' Gateway FW3


strSubnet = Array("255.255.255.0") ' Subnetzmask
strDNS = Array("193.31.224.2","172.16.224.2","192.168.0.1") ' DNS-Server
strPWINS = "193.31.224.2" ' Primary Wins
strSWINS = "172.16.224.2" ' Secondary Wins

'Ende der festen Werte

'Komponenten Name ermitteln
Public Pc
Set WshNetwork = WScript.CreateOBject("WScript.Network")
pc = WshNetwork.Computername

'NicIndex der Netzwerkkarten ermitteln
Set IPConfigSet = GetObject("winmgmts://.").ExecQuery("select * from Win32_NetworkAdapterConfiguration where IPEnabled=TRUE")
For Each IPConfig In IPConfigSet
If Not IsNull(IPConfig.IPAddress) Then
For i=LBound(IPConfig.IPAddress) To UBound(IPConfig.IPAddress)
text = text & vbcrlf & IPConfig.Caption & vbcrlf & "Index: " & IPConfig.Index & vbcrlf
Next
End If
Next

'NicIndex der Netzwerkkarte auswählen (wird vorher angezeigt)
Public NicIndex
NicIndex = InputBox("Netzwerkkarte(n) von: " & Pc & vbcrlf & text & vbcrlf & "Geben Sie hier den Index der zu Konfigurierenden Netzwerkkarte ein:" , "Administration", "")
If NicIndex = 0 Then
wscript.quit
Else
' MsgBox "Ihr eingegebener NicIndex" & vbcrlf & "zur Konfiguration ist: " & vbcrlf & NicIndex,vbExclamation , "Administration"
End If

'IP Adresse die letzte 1/2/3 Ziffern
Public ip
ip = InputBox("Geben Sie hier die IP Adresse ein.","Administration")
If ip = 0 Then
wscript.quit
Else
' MsgBox "Ihr eingegebene IP " & vbcrlf & "zur Konfiguration ist: " & vbcrlf & ip,vbExclamation , "Administration"
End If

'Feuerwache auswählen
strFrage = "Welches Netz möchten Sie nutzen?" & vbCrLf
strFrage = strFrage & vbCrLf & "1: Feuerwache 1"
strFrage = strFrage & vbCrLf & "2: Feuerwache 2"
strFrage = strFrage & vbCrLf & "3: Feuerwache 3"
'strFrage = strFrage & vbCrLf
'strFrage = strFrage & vbCrLf & "9: config"

ipfw = inputBox(strFrage & vbCrLf, "Administration", "Bitte Ziffer eingeben!")
If ipfw = 1 Then
ipfw = IPFW1
ElseIf ipfw = 2 Then
ipfw = IPFW2
ElseIf ipfw = 3 Then
ipfw = IPFW3
Else
wscript.quit
End If

'NicIndex mit IPConfig vergleichen und den Namen (IPConfig.Caption) der gewählten Karte anzuzeigen
For Each IPConfig In IPConfigSet
If (":" & IPConfig.Index = ":" & NicIndex) Then
NicName = IPConfig.Caption
'MsgBox IPConfig.Index & " " & NicIndex
End If
Next

'MsgBox "Diese IP: "& vbcrlf & ipfw & ip & vbcrlf & "wird auf folgender Netzwerkkarte: "& vbcrlf & NicName & vbcrlf & vbcrlf & "konfiguriert.", vbExclamation , "BF-Wiesbaden Administration"
MsgBox "Für den Rechner: " & pc & vbcrlf & "wird die Netzwerkkarte:" & vbcrlf & NicName & vbcrlf & "mit folgender Daten:" & vbcrlf & "IP-Adresse: " & ipfw & ip & vbcrlf & "konfiguriert.", vbExclamation , "BF-Wiesbaden Administration"

'Ab hier test zum Daten schreiben

MsgBox "hier weiter"
conf = ipfw & ip
Set WshShell = CreateObject("Wscript.Shell")
ProxyEnable="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\ProxyEnable"
wql = "Select * from win32_NetworkAdapterConfiguration Where IPEnabled=True"
Set oWMI = GetObject("winmgmts:\root\cimv2").ExecQuery(wql)

test = MsgBox ("Wollen Sie die Installation ausführen ?", 49 , "BF-Wiesbaden Administration")
If test <> 1 Then
wscript.quit
Else
For Each IPConfig In IPConfigSet
If (":" & IPConfig.Index = ":" & NicIndex) Then
WshShell.regwrite ProxyEnable,"00000001","REG_DWORD"
IPConfig = EnableStatic(Array(conf), Array(strSubnet))
'MsgBox ""& karte
End If
Next
End If


MsgBox "ende"
wscript.quit

Die Probleme habe ich ab dem Punkt "test zum Daten schreiben.
Ich muß dazu sagen, das ich in Punkto VBS absoluter Neuling bin. (Hoffe mann sieht es nicht so deutlich, und ich bin hier in der richtigen Rubrik)
Vielen Dank
Gruß
Capct
Mitglied: SvenGuenter
24.09.2007 um 10:55 Uhr
was für probleme hast du denn genau? Kommt eine Fehlermeldung? Ich habe mir den Quellcode nicht genau angesehen. Aber es ist auch schlecht was zu suchen von dem man nicht weiß was es ist ;o)


Gruß

Sven
Bitte warten ..
Mitglied: capct1
24.09.2007 um 14:38 Uhr
Hallo Sven,
erst mal danke das du dir das mal angesehen hast.
Ab dem Punkt MsgBox"hier weiter" verstehe ich das ganze nicht mehr so richtig.
Das problem ist wohl die Zeile"IPConfig = EnableStatic(Array......" hier wird wohl die IP Adresse
geschrieben, weiter gehts dann noch mit dem Subnet und Gateway.
Der Anfang mit den Msgboxen usw. habe ich ja noch auf die Reihe gebracht, aber nun komme ich halt nicht weiter.
Gruß
Carsten
Bitte warten ..
Mitglied: SvenGuenter
24.09.2007 um 15:04 Uhr
Hallo,

nochmal nachgefragt FUNKTIONIERT der Quellcode oder wird eine Fehlermeldung geworfen ( ausgegeben ).
Oder geht es Dir nur um die Funktionsweise des Quellcodes.
Bitte warten ..
Mitglied: capct1
24.09.2007 um 16:08 Uhr
Sorry,
es kommt die Standartmeldung "Typen unverträglich"
Bitte warten ..
Mitglied: SvenGuenter
24.09.2007 um 16:21 Uhr
Gut dann weiß ich da schon mal bescheid.

Die letzte Frage die ich nun noch habe ist das Netzwerk.

Innerhalb des Netzwerkes werden die oben im Quellcode angegebenen Werte benutzt und es ist KEIN DHCP Server vorhanden.
Bitte warten ..
Mitglied: capct1
25.09.2007 um 10:12 Uhr
Hallo Sven,
nein, es wird kein DHCP-Server verwendet.
Das ganze ist ein städtisches Netzwerk welches von einer externen Firma betreut wird.
Allerding haben wir als Amt 37 unsere Server noch im Haus stehen.
Kommen nun neue Clients stimmen in der Regel die ganzen Neztwerkparameter nicht,
da auch ich hier und da Tippfehler habe möchte ich das ganze über dieses Script regeln.
So ist auch sicher das alle Rechner gleich konfiguriert sind.
Sorry das ich jetzt erst Antworte, hatte gestern zu Hause noch einen Stromausfall.
Bin nun heute wieder arbeiten. Hier kann ich auch Zugreifen.
Gruß und Danke
Carsten
Bitte warten ..
Mitglied: SvenGuenter
25.09.2007 um 10:37 Uhr
Hallo Carsten,

also erstmal muss ich sagen das ich auf Anhieb keinen Fehler sehe oder finde. Problem ist aber auch das du nicht den kompletten Quellcode gepostet hast. Sprich wie du die Funktionen aufrufst wie deine main die abarbeitet usw. Bitte Maile mir doch mal den kompletten Quellcode an


Sven.Guenter@Sven-Guenter.com
Bitte warten ..
Mitglied: capct1
16.10.2007 um 20:24 Uhr
Hallo Sven und dem Rest der Mitleser,
mit Hilfe eines Kollegen habe ich nun einen funktionierenden Code.
Für Interessierte, hier ist er:
(Ach ja, die IP Adressen sin Fiktiv, zum testen am besten eine VMWare System verwenden,
schon den eigenen Rechner und die Nerven)


Dim strIPFW(3)
Dim strGatewayFW(3)

' Beginn DER KONFIGURATION
strTitel = "Admin IPConfig 1.0"
strIPFW(1) = "193.31.235." ' IP-Adresse Gebäude 1
strIPFW(2) = "172.16.14." ' IP-Adresse Gebäude 2
strIPFW(3) = "172.16.11." ' IP-Adresse Gebäude 3




strGatewayFW(1) = "193.40.235.222" ' Gateway Gebäude 1
strGatewayFW(2) = "172.20.30.229" ' Gateway Gebäude 2
strGatewayFW(3) = "172.20.40.229" ' Gateway Gebäude 3

strSubnet = Array("255.255.255.0") ' Subnetzmask'
strDNS = Array("193.40.224.2","172.20.224.2","192.168.0.1") ' DNS-Server
strPWINS = "193.10.322.2" ' Primary Wins
strSWINS = "172.10.322.2" ' Secondary Wins


' ENDE DER KONFIGURATION

'Komponenten Name ermitteln
Set WshNetwork = WScript.CreateOBject("WScript.Network")
pc = WshNetwork.Computername

'NicIndex der Netzwerkkarten ermitteln
Set IPConfigSet = GetObject("winmgmts://.").ExecQuery("select * from Win32_NetworkAdapterConfiguration where IPEnabled=TRUE")



' Alle Karten auflisten
For Each IPConfig In IPConfigSet
If Not IsNull(IPConfig.IPAddress) Then
For i=LBound(IPConfig.IPAddress) To UBound(IPConfig.IPAddress)
'text = text & IPConfig.Index & ":" & Chr(9) & IPConfig.Caption & vbcrlf
text = text & vbcrlf & "Index: " & IPConfig.Index & vbcrlf & IPConfig.Caption & vbcrlf
Next
End If
Next
'NicIndex der Netzwerkkarte auswählen (wird vorher angezeigt)
text = "Netzwerkkarte(n) von: " & Pc & vbcr & linie & vbcr & text
text = text & vbcr & linie & "Geben Sie hier den Index der zu Konfigurierenden Netzwerkkarte ein:"
NicIndex = InputBox( text, strTitel , "")
If NicIndex = 0 Then wscript.quit

'Feuerwache auswählen
strFrage = "Welches Netz möchten Sie nutzen?" & vbCrLf
strFrage = strFrage & vbCrLf & "1: Gebäude 1"
strFrage = strFrage & vbCrLf & "2: Gebäude 2"
strFrage = strFrage & vbCrLf & "3: Gebäude 3"
strFrage = strFrage & vbCrLf & ""

fw = inputBox(strFrage & vbCrLf, strTitel , "Bitte Ziffer eingeben!")
If fw=0 Then wscript.quit

'IP Adresse die letzte 1/2/3 Ziffern
ip = InputBox("Geben Sie hier denn letzten Block Ihrer IP Adresse ein.",strTitel)
If ip = 0 Then wscript.quit
conf = strIPFW(fw)+ ip
'MsgBox conf

'"Karte" ermitteln (NicIndex mit IPConfig vergleichen)
For Each Karte In IPConfigSet
If (":" & Karte.Index = ":" & NicIndex) Then Exit For
Next

text = "Für den Rechner: " & pc & vbcrlf & "wird die Netzwerkkarte:" & vbcrlf & Karte.Caption & vbcrlf & "mit folgender Daten:"_
& vbcrlf & "IP-Adresse:" & vbtab & conf & vbcrlf & "Gateway:" & vbtab & vbtab & strGatewayFW(fw) & vbcrlf &_
"DNS:" & vbtab & vbtab & strDNS (DNSSeverSearchOrder)_
& vbcrlf & "Pri.WINS:" & vbtab & vbtab & strPWINS & vbcrlf & "Sec.WINS:" & vbtab & strSWINS & vbcrlf & "konfiguriert."

x = MsgBox(text, 49 , strTitel)
If x <> vbok Then wscript.quit

' IPs in "Karte" schreiben, dabei Fehler abfangen und Erfog ausgeben
'Fehler1 = karte.EnableStatic(Array(ip), strSubnet)
Fehler1 = karte.EnableStatic(Array (conf) , strSubnet)
Fehler2 = karte.SetGateways(Array(strGatewayFW(fw)), Array(1))
Fehler3 = karte.SetDNSServerSearchOrder(strDNS)
Fehler4 = Karte.SetWINSServer(strPWINS,strSWins)
If Fehler1 = 0 Then
strMeldung = strmeldung & "Netzwerkadresse" & vbtab & "für FW " & fw & " erfolgreich eingerichtet." & vbcrlf
Else
strMeldung = strmeldung & "Netzwerkadresse" & vbtab & "für FW " & fw & " Fehler " & fehler1 & vbcrlf
End if
If Fehler2 = 0 Then strMeldung = strmeldung & "NetzwerkGateway" & vbtab & "für FW " & fw & " erfolgreich eingerichtet." & vbcrlf
If Fehler3 = 0 Then strMeldung = strmeldung & "Netzwerk-DNS" & vbtab & "für FW " & fw & " erfolgreich eingerichtet." & vbcrlf
If Fehler4 = 0 Then strMeldung = strmeldung & "Netzwerk-Wins" & vbtab & "für FW " & fw & " erfolgreich eingerichtet." & vbcrlf

'MsgBox strmeldung, 48 , strTitel

Set wmi = GetObject("winmgmts:\\" )
strEinstellungen = strEinstellungen & vbCrLf & vbCrLf & "--> Aktuelle Einstellungen:" & vbCr & ReportIPSettings(wmi)
msgBox strmeldung & strEinstellungen , 48 , strTitel

wscript.quit

Function ReportIPSettings(wmiobj)
wql = "select Caption, DHCPEnabled, DHCPLeaseObtained, DHCPLeaseExpires, DHCPServer, IPAddress, IPSubnet, DefaultIPGateway, DNSServerSearchOrder, DNSDomain, MACAddress from win32_NetworkAdapterConfiguration where IPEnabled = true"
Set ergebnis = wmiobj.ExecQuery(wql)
For each karte in ergebnis
If IsArray(karte.IPAddress) Then
ReportIPSettings = ReportIPSettings & karte.getObjectText_ & vbCrLf
End If
Next
End Function

Function ReportSettings(wmiobj)
wql = "select * from win32_NetworkAdapterConfiguration where IPEnabled = true"
Set ergebnis = wmiobj.ExecQuery(wql)
For each karte in ergebnis
If IsArray(karte.IPAddress) Then
ReportSettings = ReportSettings & karte.getObjectText_ & vbCrLf
End If
Next
End Function


So, sollte jemand eine Verbesserung haben würde ich mich freuen.
Als nächstes sollte der Punkt DHCP und statische IP´s ins Menü mit rein.
Gruß
Capct
Bitte warten ..
Ähnliche Inhalte
Windows 7

Registry - Eigentümer und Berechtigung auf Schlüssel per vbs setzen

Frage von goodbytesWindows 76 Kommentare

Hallo, ist es per vbs möglich den Besitz eines bestimmten Registry-Schlüssels für den gerade angemeldeten User zu übernehmen und ...

Netzwerkmanagement

Running-Config oder Startup-Config bei Cisco-Geräten sichern?

gelöst Frage von M.MarzNetzwerkmanagement9 Kommentare

Hallo zusammen, ich möchte gerne die Konfigs meiner Cisco-Switche sichern. In google finde ich immer wieder die Anleitung das ...

Linux

Slapd mit config File

gelöst Frage von schneerunzelLinux1 Kommentar

Hallo zusammen, seit einiger Zeit liegt die Config für den OpenLDAP Server ja im LDAP selbst. Das ist für ...

Ubuntu

Postfix Relay config

Frage von bolle01Ubuntu3 Kommentare

Moin, ich bin gerade dabei zu Testzwecken eine komplette Serverlandschaft via Linux abzubilden. Der DC funktioniert ohne Probleme deshalb ...

Neue Wissensbeiträge
Multimedia & Zubehör
AVM Fritz USB WLAN Sticks schneller einschalten
Tipp von NetzwerkDude vor 20 StundenMultimedia & Zubehör

Die AVM Fritz WLAN Sticks haben in der Firmware 2 Modis: Einmal als Massenspeicher und einmal als WLAN Netzwerkkarte ...

Windows Server

Windows Server Backup schlögt Fehl -Lösung 2008-2016

Tipp von BiGnoob vor 22 StundenWindows Server

Hi zusammen , ich möchte gerne einen Lösungstipp abgeben für folgenden fehler: lösung ist folgende:

Humor (lol)
Telekom vs. O2 - 3:2
Erfahrungsbericht von the-buccaneer vor 1 TagHumor (lol)3 Kommentare

Unglaublich aber wahr: Nachdem mein privater Anschluss am 19.04.18 auf VOIP und VDSL umgestellt wurde, hatte ich seitdem 1,5 ...

Batch & Shell

Windows 10 Heimnetzgruppe abgeschaft. Ein Script für einfache Netzwerk - Freigabe im Heimnetzwerk

Anleitung von treehe vor 1 TagBatch & Shell3 Kommentare

Anleitung für eine einfache Netzwerkfreigabe unter Windows 10 Wie weiter hab mal ein kleines CMD - Script gebastelt. Womit ...

Heiß diskutierte Inhalte
Netzwerke
IP-Adresse am zweiten Domänencontroller fest vergeben - Server verschwunden
gelöst Frage von DanielG1974Netzwerke28 Kommentare

Ich hab ein Problem, was ich bisher noch nicht erlebt habe Ich habe erfolgreich einen zweiten Server mit ActiveDirectory ...

Windows Tools
Virtueller Drucker gesucht (Schnittstelle: USB oder Seriell)
gelöst Frage von chrisButterflyWindows Tools21 Kommentare

Hi, ich suche einen virtuellen Drucker, den ich über eine USB oder serieller Schnittstelle ansprechen kann. Dieser Drucker soll ...

Windows Server
Windows Server 2012 - Update - Beim Booten bleibt der Server beim Windows Zeichen stehen
Frage von KeilbachWindows Server17 Kommentare

Hallo Zusammen, ich grüße euch, mein Name ist Michele. Ich bin hier ganz Neu - da ich einfach nicht ...

Firewall
Sophos SG 125 nicht mehr erreichbar
Frage von GwaihirFirewall15 Kommentare

Hallo zusammen, ausgerechnet über die Feiertage stimmt etwas mit meiner Firmen-Firewall nicht. Es ist eine Sophos SG 125 und ...