Toon posts:

DNS aanpassing in .vbs

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik ben bezig met een .vbs script maar ik kom er echt niet uit.
Ik moet op elke PC een scripje op het bureaublad plaatsen maar op deze manier hoe ik het nu hebt werkt het niet goed.
Het gedeelte wat ik nu zwart heb is op elke pc anders en kan geen andere manier vinden om een algemeen scripje te vinden die de DNS aanpast. Zou iemand mij hier aub mee kunnen helpen ?

Set WSHShell = CreateObject("WScript.Shell")
WshShell.RegWrite "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\{EC1EC01C-CC26-40E1-8272-A3970971DA5E}\NameServer", "", "REG_SZ"
wscript.Echo " Instellingen aangepast "

Edit : het zwart maken lukt niet het gaat om het stukje met al die cijfers en letters voor nameserver

[ Voor 8% gewijzigd door Verwijderd op 22-01-2009 13:52 ]


Acties:
  • 0 Henk 'm!

  • Angelfire
  • Registratie: September 2000
  • Laatst online: 09:13

Angelfire

AKA AZwaanR or RZA

Wat je nu wilt is niet de manier.
Download Scriptomatic bij Microsoft, en kijk eens naar het Win32_NetworkAdapterConfiguration onderdeel.
Dan kan je direct de aanpassing maken, ipv in de registry te klooien.
Voor wat jij wilt, kan je het beste WMI gebruiken (daar is het voor).

Dit scriptje leest alles voor je uit van alle Adapters, aanpassen naar wens om te schrijven ipv te lezen.

On Error Resume Next

Const wbemFlagReturnImmediately = &h10
Const wbemFlagForwardOnly = &h20

arrComputers = Array("Voer je eigen computernaam in !!!!!")
For Each strComputer In arrComputers
WScript.Echo
WScript.Echo "=========================================="
WScript.Echo "Computer: " & strComputer
WScript.Echo "=========================================="

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")
Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_NetworkAdapterConfiguration", "WQL", _
wbemFlagReturnImmediately + wbemFlagForwardOnly)

For Each objItem In colItems
WScript.Echo "ArpAlwaysSourceRoute: " & objItem.ArpAlwaysSourceRoute
WScript.Echo "ArpUseEtherSNAP: " & objItem.ArpUseEtherSNAP
WScript.Echo "Caption: " & objItem.Caption
WScript.Echo "DatabasePath: " & objItem.DatabasePath
WScript.Echo "DeadGWDetectEnabled: " & objItem.DeadGWDetectEnabled
strDefaultIPGateway = Join(objItem.DefaultIPGateway, ",")
WScript.Echo "DefaultIPGateway: " & strDefaultIPGateway
WScript.Echo "DefaultTOS: " & objItem.DefaultTOS
WScript.Echo "DefaultTTL: " & objItem.DefaultTTL
WScript.Echo "Description: " & objItem.Description
WScript.Echo "DHCPEnabled: " & objItem.DHCPEnabled
WScript.Echo "DHCPLeaseExpires: " & WMIDateStringToDate(objItem.DHCPLeaseExpires)
WScript.Echo "DHCPLeaseObtained: " & WMIDateStringToDate(objItem.DHCPLeaseObtained)
WScript.Echo "DHCPServer: " & objItem.DHCPServer
WScript.Echo "DNSDomain: " & objItem.DNSDomain
strDNSDomainSuffixSearchOrder = Join(objItem.DNSDomainSuffixSearchOrder, ",")
WScript.Echo "DNSDomainSuffixSearchOrder: " & strDNSDomainSuffixSearchOrder
WScript.Echo "DNSEnabledForWINSResolution: " & objItem.DNSEnabledForWINSResolution
WScript.Echo "DNSHostName: " & objItem.DNSHostName
strDNSServerSearchOrder = Join(objItem.DNSServerSearchOrder, ",")
WScript.Echo "DNSServerSearchOrder: " & strDNSServerSearchOrder
WScript.Echo "DomainDNSRegistrationEnabled: " & objItem.DomainDNSRegistrationEnabled
WScript.Echo "ForwardBufferMemory: " & objItem.ForwardBufferMemory
WScript.Echo "FullDNSRegistrationEnabled: " & objItem.FullDNSRegistrationEnabled
strGatewayCostMetric = Join(objItem.GatewayCostMetric, ",")
WScript.Echo "GatewayCostMetric: " & strGatewayCostMetric
WScript.Echo "IGMPLevel: " & objItem.IGMPLevel
WScript.Echo "Index: " & objItem.Index
strIPAddress = Join(objItem.IPAddress, ",")
WScript.Echo "IPAddress: " & strIPAddress
WScript.Echo "IPConnectionMetric: " & objItem.IPConnectionMetric
WScript.Echo "IPEnabled: " & objItem.IPEnabled
WScript.Echo "IPFilterSecurityEnabled: " & objItem.IPFilterSecurityEnabled
WScript.Echo "IPPortSecurityEnabled: " & objItem.IPPortSecurityEnabled
strIPSecPermitIPProtocols = Join(objItem.IPSecPermitIPProtocols, ",")
WScript.Echo "IPSecPermitIPProtocols: " & strIPSecPermitIPProtocols
strIPSecPermitTCPPorts = Join(objItem.IPSecPermitTCPPorts, ",")
WScript.Echo "IPSecPermitTCPPorts: " & strIPSecPermitTCPPorts
strIPSecPermitUDPPorts = Join(objItem.IPSecPermitUDPPorts, ",")
WScript.Echo "IPSecPermitUDPPorts: " & strIPSecPermitUDPPorts
strIPSubnet = Join(objItem.IPSubnet, ",")
WScript.Echo "IPSubnet: " & strIPSubnet
WScript.Echo "IPUseZeroBroadcast: " & objItem.IPUseZeroBroadcast
WScript.Echo "IPXAddress: " & objItem.IPXAddress
WScript.Echo "IPXEnabled: " & objItem.IPXEnabled
strIPXFrameType = Join(objItem.IPXFrameType, ",")
WScript.Echo "IPXFrameType: " & strIPXFrameType
WScript.Echo "IPXMediaType: " & objItem.IPXMediaType
strIPXNetworkNumber = Join(objItem.IPXNetworkNumber, ",")
WScript.Echo "IPXNetworkNumber: " & strIPXNetworkNumber
WScript.Echo "IPXVirtualNetNumber: " & objItem.IPXVirtualNetNumber
WScript.Echo "KeepAliveInterval: " & objItem.KeepAliveInterval
WScript.Echo "KeepAliveTime: " & objItem.KeepAliveTime
WScript.Echo "MACAddress: " & objItem.MACAddress
WScript.Echo "MTU: " & objItem.MTU
WScript.Echo "NumForwardPackets: " & objItem.NumForwardPackets
WScript.Echo "PMTUBHDetectEnabled: " & objItem.PMTUBHDetectEnabled
WScript.Echo "PMTUDiscoveryEnabled: " & objItem.PMTUDiscoveryEnabled
WScript.Echo "ServiceName: " & objItem.ServiceName
WScript.Echo "SettingID: " & objItem.SettingID
WScript.Echo "TcpipNetbiosOptions: " & objItem.TcpipNetbiosOptions
WScript.Echo "TcpMaxConnectRetransmissions: " & objItem.TcpMaxConnectRetransmissions
WScript.Echo "TcpMaxDataRetransmissions: " & objItem.TcpMaxDataRetransmissions
WScript.Echo "TcpNumConnections: " & objItem.TcpNumConnections
WScript.Echo "TcpUseRFC1122UrgentPointer: " & objItem.TcpUseRFC1122UrgentPointer
WScript.Echo "TcpWindowSize: " & objItem.TcpWindowSize
WScript.Echo "WINSEnableLMHostsLookup: " & objItem.WINSEnableLMHostsLookup
WScript.Echo "WINSHostLookupFile: " & objItem.WINSHostLookupFile
WScript.Echo "WINSPrimaryServer: " & objItem.WINSPrimaryServer
WScript.Echo "WINSScopeID: " & objItem.WINSScopeID
WScript.Echo "WINSSecondaryServer: " & objItem.WINSSecondaryServer
WScript.Echo
Next
Next


Function WMIDateStringToDate(dtmDate)
WScript.Echo dtm:
WMIDateStringToDate = CDate(Mid(dtmDate, 5, 2) & "/" & _
Mid(dtmDate, 7, 2) & "/" & Left(dtmDate, 4) _
& " " & Mid (dtmDate, 9, 2) & ":" & Mid(dtmDate, 11, 2) & ":" & Mid(dtmDate,13, 2))
End Function

I play my enemies like a game of chess...


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Hmm bedankt voor je reply maar daar kom ik niet uit ben eigenlijk een leek in programmeren en wat dat programmatje allemaal laat zien is voor mij abracadabra :(

Acties:
  • 0 Henk 'm!

  • tc982
  • Registratie: Oktober 2003
  • Laatst online: 23-09 19:41
Verwijderd schreef op donderdag 22 januari 2009 @ 15:28:
Hmm bedankt voor je reply maar daar kom ik niet uit ben eigenlijk een leek in programmeren en wat dat programmatje allemaal laat zien is voor mij abracadabra :(
Ik doe dit bij klanten via het NETSH commando, hiermee kan je alle instellingen wijzigen en ook direct laten doorvoeren :

bv : netsh interface ipv4 set dnsserver "Local Area Connection" static 195.238.2.21 primary

Computers make very fast, very accurate mistakes.


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Dat klinkt ook wel goed. Maar ik ben met vbs nu al stukje verder.

On Error Resume Next

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

Set colNetCards = objWMIService.ExecQuery _
("Select * From Win32_NetworkAdapterConfiguration Where IPEnabled = True")

For Each objNetCard in colNetCards
arrDNSServers = Array("192.168.1.100", "192.168.1.200")
objNetCard.SetDNSServerSearchOrder(arrDNSServers)
Next


Ik heb dit scripje gegoogled en hij werkt :D alleen zou iemand mij kunnen helpen hoe ik nu met een script dns weer weg haal. Want als ik ip weghaal en leeg laat veranderd er niks.

Acties:
  • 0 Henk 'm!

  • tc982
  • Registratie: Oktober 2003
  • Laatst online: 23-09 19:41
Verwijderd schreef op donderdag 22 januari 2009 @ 15:38:
Dat klinkt ook wel goed. Maar ik ben met vbs nu al stukje verder.

On Error Resume Next

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

Set colNetCards = objWMIService.ExecQuery _
("Select * From Win32_NetworkAdapterConfiguration Where IPEnabled = True")

For Each objNetCard in colNetCards
arrDNSServers = Array("192.168.1.100", "192.168.1.200")
objNetCard.SetDNSServerSearchOrder(arrDNSServers)
Next


Ik heb dit scripje gegoogled en hij werkt :D alleen zou iemand mij kunnen helpen hoe ik nu met een script dns weer weg haal. Want als ik ip weghaal en leeg laat veranderd er niks.
Mooi hoor, maar probeer toch maar eens netsh, daar kan je dan ook weer omschakelen naar DHCP en dan terug naar fixed etc.

Echt de moeite waard, dit is ook allemaal heel eenvoudig te testen door een cmd open te doen en netsh in te typen, doe dan ? als commando en je krijgt alles te zien!

Dit is volgens mij de gemakkelijkste en niet script way!

Computers make very fast, very accurate mistakes.


Acties:
  • 0 Henk 'm!

  • tc982
  • Registratie: Oktober 2003
  • Laatst online: 23-09 19:41

Computers make very fast, very accurate mistakes.


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
ok bedankt ik zal me daar eens in verdiepen
Pagina: 1