Cómo puedo configurar / cambiar DNS usando el símbolo del sistema en Windows 8


¿Cómo puedo configurar mi configuración DNS usando el símbolo del sistema o el archivo bat en windows 8

He intentado esto:

netsh interface ip set dns name="Local Area Connection" source=static addr=none

Pero no trabajado.

Author: chue x, 2013-09-04

9 answers

En primer lugar, el nombre de la red es probablemente "Ethernet", no "Conexión de área Local". Para averiguar el nombre puede hacer esto:

netsh interface show interface

Que mostrará el nombre bajo la columna "Nombre de interfaz" (se muestra aquí en negrita):

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

Ahora puede cambiar el dns primario (index=1), asumiendo que su interfaz es estática (no usa dhcp):

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

2018 Update - El comando funcionará con dnsserver (singular) o dnsservers (plural). El siguiente ejemplo utiliza el este último y también es válido:

netsh interface ipv4 add dnsservers "Ethernet" address=192.168.x.x index=1
 77
Author: chue x,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-02-20 19:36:21

Para cambiar DNS a automático vía comando, puede ejecutar el siguiente comando:

netsh interface ip set dns "Local Area Connection" dhcp
 23
Author: Marcos Cassiano,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-17 06:53:16

Hay poca diferencia en el comando de agregarY cambiar DNS-IPs:

Para Añadir:

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
  • Aquí, para saber "Nombre de Interfaz de red", escriba comando netsh interface show interface
  • 8.8.8.8 es el servidor DNS recursivo de Google, úselo, si no está funcionando

Para Establecer / Cambiar: (como OP pidió esto)

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
  • El último parámetro puede ser none: desactivar DNS, both: establecer para primario y secundario DNS both, primary: solo para DNS primario. Puede notar aquí que no estamos usando index-parameter como lo hicimos al agregar DNS.

  • En lugar de static puede escribir dhcp para hacer que la configuración de DNS sea automática, pero no se requerirá ningún parámetro adicional.


Nota: Probado en windows 8,8.1 & 10.

 19
Author: Adarsh Rajput,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-10-23 06:16:51

Aquí hay otra forma de cambiar DNS mediante el uso de WMIC (Instrumentación de administración de Windows Línea de comandos).

Los comandos se deben ejecutar como administrador para aplicar.

Borrar servidores DNS:

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

Establecer 1 servidor DNS:

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

Establecer 2 servidores DNS:

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

Establecer 2 servidores DNS en un adaptador de red particular:

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

Otro ejemplo para establecer la lista de búsqueda de dominios:

wmic nicconfig call SetDNSSuffixSearchOrder ("domain.tld")
 16
Author: XP1,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-11-10 20:13:42

Escribí este script para cambiar los servidores DNS de todas las interfaces actualmente habilitadas a una dirección específica:

@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,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-03-05 01:00:26

Ninguna de las respuestas funciona para mí en Windows 10, así que esto es lo que 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

Esto utiliza Google DNS. Puede obtener el nombre de la interfaz con el comando netsh int show interface

 9
Author: MrVaykadji,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-08-07 14:15:00

Archivo por lotes para configurar un nuevo servidor 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,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-08-13 01:56:30

Aquí está tu nuevo amigo: QuickSetDNS, por NirSoft, increíble como de costumbre.

pantallazo

También se puede usar en la línea de comandos :) con estas ventajas sobre netsh:

  • sintaxis más fácil, en particular para establecer el servidor alternativo
  • solicita automáticamente la elevación de privilegios


Solo algunas advertencias:

  • solo admite la configuración de IPv4, no de IPv6
  • en la línea de comandos, se debe usar el adaptador UUID, no es el nombre descriptivo (por ejemplo, "Conexión de área local") desde QuickSetDNS 1.21, también se admiten nombres de conexión;)
 1
Author: Gras Double,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-06-11 22:44:54

Ahora puede cambiar el dns primario (index=1), asumiendo que su interfaz es estática (no usa dhcp)

Puede configurar sus servidores DNS de forma estática incluso si utiliza DHCP para obtener su dirección IP.

Ejemplo bajo Windows 7 para agregar dos servidores DN, el comando es el siguiente:

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,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-01-12 23:12:56