google - ¿Cómo puedo establecer/cambiar DNS usando el símbolo del sistema en Windows 8?
dns google 2018 (8)
¿Cómo puedo configurar mi configuración de DNS utilizando el símbolo del sistema o el archivo bat en Windows 8?
Intenté esto:
netsh interface ip set dns name="Local Area Connection" source=static addr=none
pero no funcionó.
Ahora puede cambiar el DNS primario (índice = 1), suponiendo que su interfaz sea estática (no use dhcp)
Puede configurar sus servidores DNS estáticamente incluso si usa DHCP para obtener su dirección IP.
Ejemplo en Windows 7 para agregar dos servidores DN, el comando es el siguiente:
netsh interface ipv4 add dns "Local Area Connection" address=192.168.xx index=1 netsh interface ipv4 add dns "Local Area Connection" address=192.168.xx index=2
Aquí hay otra forma de cambiar el DNS utilizando WMIC (línea de comandos de instrumentación de administración de Windows).
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 en particular:
wmic nicconfig where "(IPEnabled=TRUE) and (Description = ''Local Area Connection'')" call SetDNSServerSearchOrder ("8.8.8.8", "8.8.4.4")
Otro ejemplo para configurar la lista de búsqueda de dominio:
wmic nicconfig call SetDNSSuffixSearchOrder ("domain.tld")
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%
Escribí esta secuencia de comandos para cambiar los servidores DNS de todas las interfaces habilitadas actualmente a direcciones específicas:
@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
Hay poca diferencia en el comando de agregar Y cambiar DNS-IP:
Para agregar:
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, úsalo, si no estás trabajando
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
: deshabilitar DNS,both
: establecer DNS primario y secundario ambos, primario: solo para DNS primario. Puedes notar aquí que no estamos usando index-parameter como lo hicimos al agregar DNS.En lugar de
static
, puede escribirdhcp
para hacer que la configuración DNS sea automática, pero no se requerirán más parámetros.
Nota: Probado en Windows 8,8.1 y 10.
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 usa Google DNS. Puede obtener el nombre de la interfaz con el comando netsh int show interface
Para cambiar DNS a automático a través del comando, puede ejecutar el siguiente comando:
netsh interface ip set dns "Local Area Connection" dhcp
Primero, el nombre de la red probablemente sea "Ethernet", no "Conexión de área local". Para averiguar el nombre, puede hacer esto:
netsh interface show interface
Que mostrará el nombre debajo de la columna "Nombre de la interfaz" (que se muestra aquí en negrita):
Admin State State Type Interface Name ------------------------------------------------------------------------- Enabled Connected Dedicated Ethernet
Ahora puede cambiar el DNS primario (índice = 1), suponiendo que su interfaz sea estática (no use dhcp):
netsh interface ipv4 add dnsserver "Ethernet" address=192.168.x.x index=1