Como posso definir / alterar DNS usando a linha de comandos no windows 8

Como É Que posso definir a minha configuração do DNS usando a linha de comandos ou o ficheiro bat no windows 8

tentei isto:

netsh interface ip set dns name="Local Area Connection" source=static addr=none
Mas não funcionou.

Author: chue x, 2013-09-04

9 answers

Primeiro, o nome da rede é provavelmente "Ethernet", não"Ligação Local". Para descobrir o nome você pode fazer isso:

netsh interface show interface

Que irá mostrar o nome sob a coluna" Nome da Interface " (mostrado aqui a negrito):

Admin State    State          Type             Interface Name
-------------------------------------------------------------------------
Enabled        Connected      Dedicated        Ethernet

Agora pode alterar o dns primário( índice=1), assumindo que a sua interface é estática (não usando o dhcp):

netsh interface ipv4 add dnsserver "Ethernet" address=192.168.x.x index=1

2018 Update - o comando irá funcionar com dnsserver (singular) ou dnsservers (plural). O exemplo a seguir usa o este último e também é válido:

netsh interface ipv4 add dnsservers "Ethernet" address=192.168.x.x index=1
 77
Author: chue x, 2018-02-20 19:36:21

Para mudar o DNS para automático via comando, poderá executar o seguinte comando:

netsh interface ip set dns "Local Area Connection" dhcp
 23
Author: Marcos Cassiano, 2017-05-17 06:53:16

Há pouca diferença no comando de adicionar e alterar DNS-IPs:

A Adicionar:

Syntax:
   netsh interface ipv4 add dnsserver "Network Interface Name" dns.server.ip index=1(for primary)2(for secondary)
Eg:
   netsh interface ipv4 add dnsserver "Ethernet" 8.8.8.8 index=1
  • aqui, para saber "Nome da Interface de rede", escreva comando netsh interface show interface
  • 8.8.8.8.8 é o servidor DNS recursivo do Google, use-o, se o seu não está a funcionar

Para definir/alterar: (como OP perguntou isto)

Syntax:
   netsh interface ipv4 set dnsservers "Network Interface Name" static dns.server.ip primary
Eg:
   netsh interface ipv4 set dnsservers "Wi-Fi" static 8.8.4.4 primary
   netsh interface ipv4 set dnsservers "Wi-Fi" dhcp
  • O último parâmetro pode ser none: desactivar o DNS, both: definido para o primário e DNS secundários ambos, primário: apenas para DNS primários. Você pode notar aqui que não estamos usando index-parameter como fizemos na adição de DNS.

  • No lugar de static você pode digitar dhcp para tornar a configuração DNS automática, mas outro parâmetro não será necessário.


Nota: testado no windows 8,8. 1 e 10.

 19
Author: Adarsh Rajput, 2015-10-23 06:16:51

Aqui está outra maneira de mudar o DNS usando a linha de comandos WMIC (Windows Management Instrumentation).

Os comandos devem ser executados como administrador para serem aplicados.

Limpar os servidores DNS:

wmic nicconfig where (IPEnabled=TRUE) call SetDNSServerSearchOrder ()

Definir 1 servidor DNS:

wmic nicconfig where (IPEnabled=TRUE) call SetDNSServerSearchOrder ("8.8.8.8")

Definir 2 servidores DNS:

wmic nicconfig where (IPEnabled=TRUE) call SetDNSServerSearchOrder ("8.8.8.8", "8.8.4.4")

Defina 2 servidores DNS num adaptador de rede em particular:

wmic nicconfig where "(IPEnabled=TRUE) and (Description = 'Local Area Connection')" call SetDNSServerSearchOrder ("8.8.8.8", "8.8.4.4")

Outro exemplo para definir a lista de pesquisa de domínios:

wmic nicconfig call SetDNSSuffixSearchOrder ("domain.tld")
 16
Author: XP1, 2016-11-10 20:13:42

Escrevi este programa para mudar os servidores de DNS de todas as interfaces actualmente activas para um endereço específico:

@echo off

:: Google DNS
set DNS1=8.8.8.8
set DNS2=8.8.4.4

for /f "tokens=1,2,3*" %%i in ('netsh int show interface') do (
    if %%i equ Enabled (
        echo Changing "%%l" : %DNS1% + %DNS2%
        netsh int ipv4 set dns name="%%l" static %DNS1% primary validate=no
        netsh int ipv4 add dns name="%%l" %DNS2% index=2 validate=no
    )
)

ipconfig /flushdns

:EOF
 14
Author: Meow, 2015-03-05 01:00:26

Nenhuma das respostas está a funcionar para mim no Windows 10, por isso aqui está o que eu uso:

@echo off

set DNS1=8.8.8.8
set DNS2=8.8.4.4
set INTERFACE=Ethernet

netsh int ipv4 set dns name="%INTERFACE%" static %DNS1% primary validate=no
netsh int ipv4 add dns name="%INTERFACE%" %DNS2% index=2

ipconfig /flushdns

pause

Isto usa o Google DNS. Você pode obter o nome da interface com o comando netsh int show interface

 9
Author: MrVaykadji, 2015-08-07 14:15:00

Ficheiro em lote para configurar um novo servidor de dns

@echo off
rem usage: setdns <dnsserver> <interface>
rem default dsnserver is dhcp
rem default interface is Wi-Fi
set dnsserver="%1"
if %dnsserver%=="" set dnsserver="dhcp"
set interface="%2"
if %interface%=="" set interface="Wi-Fi"
echo Showing current DNS setting for interface a%interface%
netsh interface ipv4 show dnsserver %interface%
echo Changing dnsserver on interface %interface% to %dnsserver%
if %dnsserver% == "dhcp" netsh interface ipv4 set dnsserver %interface% %dnsserver%
if NOT %dnsserver% == "dhcp" netsh interface ipv4 add dnsserver %interface% address=%dnsserver% index=1
echo Showing new DNS setting for interface %interface%
netsh interface ipv4 show dnsserver %interface%
 3
Author: BSalita, 2014-08-13 01:56:30

Aqui está o seu novo amigo: QuickSetDNS , por NirSoft, incrível como de costume.

screenshot

Também pode ser usado na linha de comandos: ) com estas vantagens sobre a netsh:

  • sintaxe mais fácil, em particular para definir o servidor alternativo
  • pede automaticamente elevação de privilégios


apenas algumas ressalvas:

  • suporta apenas a configuração do IPv4, não do IPv6
  • na linha de comando, o UUID do adaptador deve ser usado, não o nome Amigável (Por exemplo, "Local Area Connection") desde o QuickSetDNS 1. 21, os nomes das ligações também são suportados;)
 1
Author: Gras Double, 2018-06-11 22:44:54

Agora pode alterar o dns primário( índice=1), assumindo que a sua interface é estática (não usando o dhcp)

Pode definir os seus servidores de DNS de forma estática, mesmo que use o DHCP para obter o seu endereço IP.

Exemplo no Windows 7 para adicionar dois servidores DN, o comando é o seguinte:

netsh interface ipv4 add dns "Local Area Connection" address=192.168.x.x index=1 netsh interface ipv4 add dns "Local Area Connection" address=192.168.x.x index=2

 0
Author: Zathraszero, 2015-01-12 23:12:56