Anexar sufixos dns via prompt de comando do windows

11

No meu trabalho, temos dois sufixos DNS específicos da conexão. lhs.local e cis.local. Eu estou tentando escrever um arquivo em lotes que vai cuidar de muitas tarefas administrativas comuns que precisam ser feitas quando implantar um computador, e anexá-las é uma dessas tarefas.

Existe um comando para fazer isso programaticamente?

    
por Chris Sobolewski 11.10.2010 / 15:40

2 respostas

8

Via este post

In order to add a DNS suffix to a TCP/IP connection remotely, all you need is a list of IP addresses and the following command:

wmic /USER:administrator /PASSWORD:adminpassword /node:@c:\iplist.txt nicconfig call SetDNSSuffixSearchOrder (mydomain.com)

where C:\iplist.txt contains a list of IP addresses, line separated.

Outra maneira é adicionar via o registro

reg add HKLM\System\currentcontrolset\services\tcpip\parameters /v “NV Domain” /d “mydomain.com” /f

Há uma entrada da base de conhecimento da Microsoft para o mesmo.

    
por 11.10.2010 / 17:24
2

Com base na resposta de Sathya e em outros recursos, escrevi isto:

@echo off
SETLOCAL EnableDelayedExpansion

:: Input here the additional suffix
set suffix=your.own.suffix

:: Get existing DNS suffixes
FOR /F "usebackq tokens=1,2* delims= " %%A in ('reg QUERY HKLM\SYSTEM\CurrentControlSet\services\Tcpip\Parameters /V SearchList ^| findstr REG_SZ') do ( 
    set OLD_DNS=%%C
)

:: Check if it starts with our suffix
set OK=NO
FOR /F "tokens=1,2* delims=," %%A in ("%OLD_DNS%") do (
    if "%%A" == "%suffix%" set OK=YES
)

:: Add our suffix first if it's not there
if "%OK%" == "NO" (
    echo Conf KO: %OLD_DNS%
    reg add HKLM\SYSTEM\CurrentControlSet\services\Tcpip\Parameters /V SearchList /D "%suffix%,%OLD_DNS%" /F
) else (
    echo Conf OK: %OLD_DNS%
)

ipconfig /flushdns
    
por 22.09.2014 / 12:02