Klien VPN terhubung / terputus melalui baris perintah di XP

22

Di workstation XP Pro, apakah ada cara untuk memulai klien Windows VPN asli dan membuka / menutup koneksi dari baris perintah sehingga dapat ditulis dalam file batch?

nedm
sumber

Jawaban:

31

Ya, jika koneksi VPN disebut "My VPN", maka:

rasdial "My VPN"

akan memanggil koneksi. Membantu mengatur tingkat kesalahan ke kode kesalahan RAS jika gagal terhubung, sehingga skrip Anda dapat mendeteksi kegagalan koneksi. Jika Anda perlu memberikan nama pengguna dan kata sandi alih-alih menggunakan kredensial yang disimpan gunakan:

rasdial "My VPN" username password

Untuk memutuskan koneksi, gunakan:

rasdial "My VPN" /disconnect

JR

John Rennie
sumber
2
+1. Ini persis apa yang saya cari di skrip otomatisasi build saya. Jauh lebih mudah daripada yang saya perkirakan.
Joseph Ferris
FWIW, juga bekerja di Vista (seperti yang diharapkan)
Scott Isaacs
1
Lihat jawaban EM jika Anda menggunakan Windows 7 . Anda mungkin perlu menggunakan rasphonejika rasdialtidak bekerja untuk Anda.
ADTC
5

Alternatif yang bekerja di bawah Windows 7 (tidak yakin tentang XP) adalah:

rasphone -d "My VPN"

Ini menampilkan dialog "panggilan", sama seperti jika Anda mengklik dua kali pada koneksi. Jika Anda memiliki nama pengguna dan kata sandi disimpan secara otomatis memanggil.

rasdial tidak bekerja untuk saya (pada 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.

Jika Anda menambahkan string kosong di bawah Windows 7 itu berfungsi dengan kredensial cache: rasdial "VPN Saya" "" "" (itu adalah dua pasang tanda kutip ganda dengan tidak ada di antaranya)

EM0
sumber
Saya tidak bisa mendapatkan rasdial untuk bekerja pada Windows 8.1 tetapi ini bekerja dengan sempurna. +1
Smalltown2k
Saya harus memberikan kredensial eksplisit untuk membuatnya berfungsi pada Windows 8.1.
Jake Edwards
Saya mendapatkan kesalahan yang sama menggunakan rasdialdengan atau tanpa string kosong. rasphone -dbekerja. Satu hal yang perlu diperhatikan adalah bahwa jika Anda menjalankannya dari baris perintah secara manual, ia kembali ke baris perintah segera setelah eksekusi (koneksi terhubung secara paralel). Tetapi jika Anda menempatkan perintah dalam skrip batch ( .bat) file dan menjalankan .batfile, itu bekerja secara seri - yaitu, itu tidak mengembalikan kontrol ke batch sampai koneksi selesai. Perbedaannya bisa membingungkan bagi pengguna baru yang menguji perintah keluar.
ADTC
Dengan menggunakan rasphone, sebuah dialog muncul setiap kali saya terhubung. Apakah ada cara untuk membuatnya otomatis dan menghindari dialog untuk muncul? Saya melihat di utas ini ( superuser.com/questions/106506/... ) dan orang-orang mengatakan kita bisa masuk ke tab opsi properti untuk koneksi VPN dan hapus centang "Prompt untuk nama dan kata sandi, sertifikat, dll.". Namun, saya menggunakan Windows 10 dan saya tidak dapat menemukan opsi tersebut.
Kit Ng
3

Jalankan command-line: Control ncpa.cpl

masukkan deskripsi gambar di sini

Kontrol Koneksi Jaringan

Kontrol Koneksi Jaringan

Dalam menjalankan pertama, edit Pengaturan VPN Saya

masukkan deskripsi gambar di sini

Setelah pengaturan, edit Pengaturan VPN Saya

masukkan deskripsi gambar di sini

Simpan kredensial

masukkan deskripsi gambar di sini

Pengaturan host VPN tujuan

masukkan deskripsi gambar di sini

Diam pengaturan VPN

masukkan deskripsi gambar di sini

Jaringan VPN

masukkan deskripsi gambar di sini

VPN TCP maju

masukkan deskripsi gambar di sini

Gerbang VPN

masukkan deskripsi gambar di sini

Koneksi jaringan tingkat lanjut

masukkan deskripsi gambar di sini

Tetapkan antarmuka prioritas

masukkan deskripsi gambar di sini

Tetapkan antarmuka prioritas

masukkan deskripsi gambar di sini

Tetapkan penyedia jaringan prioritas

masukkan deskripsi gambar di sini

Skrip 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

Gunakan PowerShell atau WSH.

STTR
sumber
0

Saya belum melihat skema baris perintah untuk klien. Tapi, bukan berarti tidak bisa diotomatiskan dalam skrip. Berikut ini adalah pendekatan dua langkah,

  • Buat tautan pintasan untuk VPN seperti yang dilakukan secara normal untuk pengguna VPN Anda
    • Tetap konfigurasikan dengan nama pengguna dan kata sandi
  • Gunakan AutoIt hanya untuk skrip,
    • meluncurkan pintasan, dan
    • menekan ENTER pada jendela login VPN (yang dilakukan pengguna ketika semuanya sudah dikonfigurasi)

Jika saya mengingat kembali dengan benar, kode untuk menekan enter pada jendela adalah sederhana,

Send ("{ENTER}")

Lihatlah perintah Kirim .

Anda dapat mengatur AutoIt di salah satu mesin administrasi Anda, membuat skrip berfungsi, membuat dan dieksekusi untuk itu, dan memberikannya kepada pengguna. Itu kemudian dapat diluncurkan dari baris perintah sebagai executable.

nik
sumber