Usuário com melhor resposta
Adicionar endereço DNS

Pergunta
-
Gostaria de Saber se existe alguma maneira de Definir a listagem de servidores DNS via script ?
Por Exemplo:
Qunado acessar as Configurações da Rede - Configurações TCP/IP Avancadas /na aba DNS, possui os endereços de servidor DNS a serem usados.
Como faço para adicionar isso nos meus clientes de dominio: Windows 7/ Windows XP.
Obrigado
DiegoCS - http://www.taokti.blogspot.com
Respostas
-
Diego,
Dá uma olhada no script abaixo. Fiz uma montagem de scripts que tenho que fazem algo semelhante e adaptei rapidamente para o seu caso. Não tive como testar, pois estou sem meu ambiente de teste no momento por isso não tenho como garantir afuncionalidade, mas a idéia é essa. Caso não funcione post o erro que conserto para você em outro momento.
No arquivo servidores.txt (indique o local correto do arquivo no script) você irá colocar o nome das máquinas que terão os endereços DNS primário e secundário definidos pelo script.
Dim oFSO, sArquivo, oArquivo, sTexto, strNomeUsuario, strDominio, objUsuario
Set oFSO = CreateObject("Scripting.FileSystemObject")
sArquivo = "C:\scripts\Computadores.txt"
If oFSO.FileExists(sArquivo) Then
Set oArquivo = oFSO.OpenTextFile(sArquivo, 1)
Do While Not oArquivo.AtEndOfStream
sTexto = oArquivo.ReadLine
If Trim(sTexto) <> "" Then
strComputer= sTexto
On Error Resume Next
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.0.155 ", "192.168.1.200 ")
objNetCard.SetDNSServerSearchOrder(arrDNSServers)
Next
Elmo Baraúna - FSCTP / MCP / MCDST / MCSA / MCT- Marcado como Resposta Fábio JrModerator quarta-feira, 29 de fevereiro de 2012 19:59
Todas as Respostas
-
Diego,
Se vc tiver um DHCP na rede, pode fazer por ele. Nas configurações do escopo da rede é possível configurar a lista de DNS a ser configurado nos clientes.
Caso não tenha o DHCP, pode utlizaro NETSH em um script BAT. Veja o exemplo abaixo:
netsh interface ip set dns "Local Area Connection" static <IP_DO_DNS>
Ricardo F Firmino MCP/MCTS - Se a resposta lhe ajudou, marque como util. | http://sysadmins.com.br -
Diego,
Dá uma olhada no script abaixo. Fiz uma montagem de scripts que tenho que fazem algo semelhante e adaptei rapidamente para o seu caso. Não tive como testar, pois estou sem meu ambiente de teste no momento por isso não tenho como garantir afuncionalidade, mas a idéia é essa. Caso não funcione post o erro que conserto para você em outro momento.
No arquivo servidores.txt (indique o local correto do arquivo no script) você irá colocar o nome das máquinas que terão os endereços DNS primário e secundário definidos pelo script.
Dim oFSO, sArquivo, oArquivo, sTexto, strNomeUsuario, strDominio, objUsuario
Set oFSO = CreateObject("Scripting.FileSystemObject")
sArquivo = "C:\scripts\Computadores.txt"
If oFSO.FileExists(sArquivo) Then
Set oArquivo = oFSO.OpenTextFile(sArquivo, 1)
Do While Not oArquivo.AtEndOfStream
sTexto = oArquivo.ReadLine
If Trim(sTexto) <> "" Then
strComputer= sTexto
On Error Resume Next
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.0.155 ", "192.168.1.200 ")
objNetCard.SetDNSServerSearchOrder(arrDNSServers)
Next
Elmo Baraúna - FSCTP / MCP / MCDST / MCSA / MCT- Marcado como Resposta Fábio JrModerator quarta-feira, 29 de fevereiro de 2012 19:59
-