Cliente VPN conectar / desconectar a través de la línea de comando en XP

22

En una estación de trabajo XP Pro, ¿hay alguna manera de iniciar el cliente VPN nativo de Windows y abrir / cerrar una conexión desde la línea de comandos para que pueda ser programada en un archivo por lotes?

nedm
fuente

Respuestas:

31

Sí, si la conexión VPN se llama "Mi VPN", entonces:

rasdial "My VPN"

marcará la conexión. Con ayuda, establece el nivel de error en el código de error RAS si no se conecta, para que su script pueda detectar una falla de conexión. Si necesita proporcionar un nombre de usuario y una contraseña en lugar de usar las credenciales guardadas, use:

rasdial "My VPN" username password

Para desconectar una conexión use:

rasdial "My VPN" /disconnect

JR

John Rennie
fuente
2
+1. Esto es exactamente lo que estoy buscando en mis scripts de automatización de compilación. Mucho más fácil de lo que esperaba.
Joseph Ferris
FWIW, también funciona en Vista (como se esperaba)
Scott Isaacs el
1
Vea la respuesta de EM si está en Windows 7 . Es posible que deba usarlo rasphonesi rasdialno funciona para usted.
ADTC
5

Una alternativa que funciona con Windows 7 (no estoy seguro acerca de XP) es:

rasphone -d "My VPN"

Esto abre el cuadro de diálogo "marcado", igual que si hace doble clic en la conexión. Si tiene el nombre de usuario y la contraseña guardados, marca automáticamente.

rasdial no funcionó para mí (en Windows 7):

Verifying username and password...

Remote Access error 691 - The remote connection was denied because the user name
 and password combination you provided is not recognized, or the selected authen
tication protocol is not permitted on the remote access server.

Si agrega cadenas vacías en Windows 7, funciona con credenciales almacenadas en caché: rasdial "My VPN" "" "" (son dos pares de comillas dobles sin nada en el medio)

EM0
fuente
No pude obtener rasdial para trabajar en Windows 8.1, pero esto funcionó perfectamente. +1
Smalltown2k
Tuve que proporcionar credenciales explícitas para que funcione en Windows 8.1.
Jake Edwards
Me sale el mismo error usando rasdialcon o sin las cadenas vacías. rasphone -dtrabajos. Una cosa a tener en cuenta es que si lo ejecuta manualmente desde una línea de comando, vuelve a la línea de comando inmediatamente después de la ejecución (la conexión se conecta en paralelo). Pero si coloca el comando en un .batarchivo de secuencia de comandos por lotes ( ) y ejecuta el .batarchivo, funciona en serie, es decir, no devuelve el control al lote hasta que se completa la conexión. La diferencia podría ser confusa para que un nuevo usuario pruebe el comando.
ADTC
Al usar rasphone, aparece un cuadro de diálogo cada vez que me conecto. ¿Hay alguna forma de hacerlo automático y evitar que aparezca el cuadro de diálogo? Veo en este hilo ( superuser.com/questions/106506/… ) y la gente dijo que podemos ir a la pestaña de opciones de las propiedades para la conexión VPN y desmarque "Solicitar nombre y contraseña, certificado, etc.". Sin embargo, estoy usando Windows 10 y no puedo encontrar esa opción.
Kit Ng
3

Ejecute la línea de comando: Control ncpa.cpl

ingrese la descripción de la imagen aquí

Control de conexiones de red

Control de conexiones de red

En la primera ejecución, edite la configuración de Mi VPN

ingrese la descripción de la imagen aquí

Después de la configuración, edite la configuración de Mi VPN

ingrese la descripción de la imagen aquí

Guardar credenciales

ingrese la descripción de la imagen aquí

Configuración de host de VPN de destino

ingrese la descripción de la imagen aquí

Configuración de VPN silenciosa

ingrese la descripción de la imagen aquí

Redes VPN

ingrese la descripción de la imagen aquí

VPN TCP avanzado

ingrese la descripción de la imagen aquí

Puerta de enlace VPN

ingrese la descripción de la imagen aquí

Conexión de red avanzada

ingrese la descripción de la imagen aquí

Establecer interfaz de prioridad

ingrese la descripción de la imagen aquí

Establecer interfaz de prioridad aplicar

ingrese la descripción de la imagen aquí

Establecer proveedor de red prioritario

ingrese la descripción de la imagen aquí

Guión Silent-dial.cmd:

:: - comment in cmd) - REM alternative
:: disabled command output

@echo off

:: Silent dial "My VPN"
@rasphone -d "My VPN"

:: wait 10 sec W2K3 server test
::@SET waitsec=10
::@choice /T %waitsec% /N /D y /M "wait %waitsec% sec"

:: wait 10 sec - alternative - XP .. 7
@ping 127.0.0.1 -n 10 > NUL 

:: ********************************************
:: get path
:: set route table
:: run application 
:: ********************************************

@ping 127.0.0.1 -n 10 > NUL 

:: silent close "My VPN" connection
@rasphone -h "My VPN"

:: END Silent-dial.cmd

Utilice powershell o WSH.

STTR
fuente
0

Todavía no he visto un esquema de línea de comando para el cliente. Pero eso no significa que no se pueda automatizar en scripts. Aquí hay un enfoque de dos pasos,

  • Cree el enlace de acceso directo para la VPN como se hace normalmente para sus usuarios de VPN
    • Mantenlo configurado con nombre de usuario y contraseña
  • Use AutoIt solo para script,
    • iniciar el acceso directo y
    • presionando ENTER en la ventana de inicio de sesión de VPN (que es lo que hace un usuario cuando todo está configurado)

Si recuerdo correctamente, el código para presionar enter en una ventana es simplemente,

Send ("{ENTER}")

Mira el comando Enviar .

Puede configurar AutoIt en una de sus máquinas de administración, hacer que el script funcione, crearlo y ejecutarlo, y dárselo a los usuarios. Luego se puede iniciar desde la línea de comandos como un ejecutable.

nik
fuente