locked
Netsh RRS feed

  • Pregunta

  • Necesito una linea de comando que pueda poner en un autoexec o algo asi para borrar los DNS y las direcciones de IP de 100 equipos y deseo hacer un CD con un autorun para hacerlo más fácil.

    He investigado y en el comando Netsh entrando a Interface IP, hay unas opciones para hacerlo pero no se como crear la linea entera para que se ejecute todo en un solo paso.

    La secuencia sería asi:

    1.- CMD

    2.- En prompt de sistema escribir netsh

    3.- Aparece el prompt a (C:/Netsh>) ahi se escribe "Interface IP"

    4.- Cambia el prompt a (C:/Interface IP>) ahi puedes escribir el comando "Delete DNS" con su syntaxis correspondiente y te borra los DNS

    ¿Como le hago para hacer un autoexec o algo parecido para que se realice en un solo paso?

    jueves, 21 de septiembre de 2006 22:44

Respuestas

  • Hola Francisco,

    Perdona que viera antes tu explicación de lo que querias hacer.

    Tienes que crear un archivo dhcp.cmd

    ____________________________________

    cscript eDHCP.vbs

    netsh interface ip delete dns "Local Area Connection" all

    _____________________________________

    Luego otro llamado eDHCP.vbs

    Const FULL_DNS_REGISTRATION = True
    Const DOMAIN_DNS_REGISTRATION = False
    strComputer = "."
    Set objWMIService = GetObject("winmgmts:" _
        & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

    Set colNetAdapters = objWMIService.ExecQuery _
        ("Select * from Win32_NetworkAdapterConfiguration where IPEnabled=TRUE")
     
    For Each objNetAdapter In colNetAdapters
        errEnable = objNetAdapter.EnableDHCP()
    Next

    _________________________________________

    Ya solo te queda llamar al dhcp.cmd en el autorun.

    Si tienes una unidad de red, tal vez sea mejor dejarlo hay y que lo ejecuten en cada equipo.

    Un saludo.

    Buenas practicas para el uso de los foros
    Si la respuesta te es de utilidad marca la pregunta como respondida.
    No pongas las preguntas en mas de un foro.

    Daniel Matey.
    MCSE, MCSA, MCSD, MCDBA.
    Blog: http://dmatey.spaces.live.com

     

    sábado, 23 de septiembre de 2006 9:51

Todas las respuestas

  • Francisco,

    Esos pcs ¿estan en dominio?

    Nos puedes contar para que quieres hacerlo, tal vez te podamos dar una solución mejor.

    Un saludo.

    Buenas practicas para el uso de los foros
    Si la respuesta te es de utilidad marca la pregunta como respondida, ayudaras a mantener el foro util para todos y asi agradeces las respuestas.
    No pongas las preguntas en mas de un foro.

    Daniel Matey.
    MCSE, MCSA, MCSD, MCDBA.
    Blog: http://dmatey.spaces.live.com

    viernes, 22 de septiembre de 2006 5:00
  • Abre un archivo del bloc de notas y escribe esto (las líneas no):

    ------------------------------

    netsh delete dns name= N addr= D

    exit

    ----------------------------

    sustituyendo N por el nombre del interfaz (tal y como aparece en las conexiones de red) al que quieres eliminarle las DNS y D por la dirección del servidor DNS a eliminar.

    Una vez hecho guárdarlo con el nombre que quieras, pero con extensión cmd o bat.

    viernes, 22 de septiembre de 2006 6:17
  • Estimado Daniel

    Las PC estan solo en un grupo de trabajo y comparten el Internet por medio de una conexión LAN, una pc tiene 2 tarjetas de red por una recibe la señal y con la otra la comparte hacia un switch donde estan conectadas las 100 pc´s, necesito cambiar la configuración de las 100 pc quitando la dirección IP que tienen y dejarlas como dinámicas solo que quiero ahorrarme tiempo y hacerlo desde un archivo .bat o .cmd grabandolo en un CD creando un autorun que llame al archivo .bat así solo sería cuestión de introducir el CD a cada equipo y sería una herramienta para cualquier otra situación ya que es una escuela y los alumnos hacen travesuras cada rato.

    Te agradecería si me informaras como poder hacer, la cuestión es que hay días que no estoy y los maestros que se quedan no saben hacerlo de forma manual, si puedo crear este cd nos ayudaría bastante.

    Gracias por tu tiempo...

    viernes, 22 de septiembre de 2006 14:56
  • Estimado José, ya prove la opción que me diste pero no resulta marca error ojalá y tengas otra solución si lees la expliación que le escribí a Daniel talves entiendas lo que necesito.

    Gracias....

    viernes, 22 de septiembre de 2006 14:59
  • ¿Qué error te da exactamente?
    viernes, 22 de septiembre de 2006 15:36
  • No se encuentra el comando: netsh delete dns etc, etc
    viernes, 22 de septiembre de 2006 15:41
  • ¿Tienes instalado SP2?
    viernes, 22 de septiembre de 2006 15:43
  • Si asi es, mira si pongo los comandos uno a uno si los ejecuta y me borra los dns y las IP  pero no puedo hacer una sola línea de comando o un proceso en un .BAT
    viernes, 22 de septiembre de 2006 15:46
  • ¿Cómo ejecutas el bat? ¿Cuál es el contenido del bat exactamente?
    viernes, 22 de septiembre de 2006 15:49
  • No tengo todavía un bat te digo que es lo que necesiot me ayuden a hacerlo por que no se como
    viernes, 22 de septiembre de 2006 15:54
  • Pues lo que te dije en la otra respuesta. Si vas a Inicio > Ejecutar y escribes

    cmd

    y ahí escribes

    netsh delete dns name=N addr=D

    sustituyendo N y D, ¿te funciona?

    viernes, 22 de septiembre de 2006 15:56
  • No ya lo intente así, y marca el error que te mencionaba, los comandos si los tengo ya se como hacer lo que necesito pero no lo puedo ejecutar en una solo línea o no se como ponerlo en un .bat

    Te mando el órden y los comando que utilice para lo que quiero ojalá y puedas acomodarlos en un .bat

    1.- En ejecutar de windows   CMD  enter

    2.- En el prompt de sistema       C:/>netsh    enter

    3.-En el prompt de sistema        C:/netsh>interface ip    enter (este comando pertenece a netsh)

    4.-En el prompt de sistema        C:/netsh/interface ip>delete dns "Conexión de área local" all    enter (este comando pertenece a interface ip)

    con eso me borra todos los DNS de esa interfaz el nombre de la intefaz debe ser entre "  "

    5.- En el prompt de sistema        C:/netsh/interface ip>delete address "Conexión de área local" all

    con esto borra la IP de esa interfaz y con eso termina el proceso que yo quiero hacer en un .bat

     

    viernes, 22 de septiembre de 2006 17:09
  • Pero no pulses Enter, escríbelo en una línea y luego pulsa Enter al final... Tiene que funcionar.
    viernes, 22 de septiembre de 2006 17:18
  • No no funciona marca que no encontró el comando

    por eso quería un .bat para que haga uno por uno cada proceso como si lo hiciera manual pero no se como hacerlo

     

    viernes, 22 de septiembre de 2006 17:49
  • ¿Y así? (en el bat)

    -------------------------

    netsh interfac IP

    delete dns name=N addr=D

    exit

    ---------------------------------

    lo guardas en un archivo del bloc de notas (tendrás que cambiar IP, N y D) y lo guardas con la extensión cmd. Luego inicio > Ejecutar y escribes

    cmd

    navega hasta el archivo y lo ejecutas.

    viernes, 22 de septiembre de 2006 17:55
  • No ya lo hice y marca que no encontró el comando

    si pongo las lineas por separado de esta forma

    --------------------------

    netsh

    interface ip

    delete dns "etc" all

    -----------------------------

    solo entra a netsh y se queda en el prompt no ejecuta el siguiente comando al dar exit para salir de netsh ejecuta las lineas restantes pero marca error obvio por que ya no esta en nesth

    habra alguna sentencia para que ejecute todas las líneas?

    viernes, 22 de septiembre de 2006 18:14
  • Perdona, pero creo que me he estado confundiendo. Te debe funcionar algo así:

    ----------------------------------------
    netsh interface ip delete dns name=N addr=D
    ---------------------------------------
    en el cmd. Cambia N por el nombre de la interfaz a cambiar y D por la dirección IP del servidor DNS.
    viernes, 22 de septiembre de 2006 18:57
  • Hola Francisco,

    Perdona que viera antes tu explicación de lo que querias hacer.

    Tienes que crear un archivo dhcp.cmd

    ____________________________________

    cscript eDHCP.vbs

    netsh interface ip delete dns "Local Area Connection" all

    _____________________________________

    Luego otro llamado eDHCP.vbs

    Const FULL_DNS_REGISTRATION = True
    Const DOMAIN_DNS_REGISTRATION = False
    strComputer = "."
    Set objWMIService = GetObject("winmgmts:" _
        & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

    Set colNetAdapters = objWMIService.ExecQuery _
        ("Select * from Win32_NetworkAdapterConfiguration where IPEnabled=TRUE")
     
    For Each objNetAdapter In colNetAdapters
        errEnable = objNetAdapter.EnableDHCP()
    Next

    _________________________________________

    Ya solo te queda llamar al dhcp.cmd en el autorun.

    Si tienes una unidad de red, tal vez sea mejor dejarlo hay y que lo ejecuten en cada equipo.

    Un saludo.

    Buenas practicas para el uso de los foros
    Si la respuesta te es de utilidad marca la pregunta como respondida.
    No pongas las preguntas en mas de un foro.

    Daniel Matey.
    MCSE, MCSA, MCSD, MCDBA.
    Blog: http://dmatey.spaces.live.com

     

    sábado, 23 de septiembre de 2006 9:51
  • Para usar el comando netsh para varias redes cambias el nombre de la dns manualmente y escribes en un bat lo siguiente

    netsh interface ip set address name="LanCPB" source=static 192.168.1.22 255.255.255.0 192.168.1.2 1
    netsh interface ip set dns "LanCPB" static 200.89.26.3
    netsh interface ip add dns name="LanCPB" addr=200.89.26.4

    en otro bat

    netsh interface ip set address name="LanCPB" source=dhcp
    netsh interface ip set dns "LanCPB" static none

    el segundo borra las ip y lo deja en modo automatico

    miércoles, 15 de noviembre de 2006 22:34