Bisakah saya secara otomatis ROUTE ADD xxxx setelah saya membuat koneksi VPN di Windows 7?

8

setelah saya membuat koneksi VPN ke pekerjaan saya / apa pun, saya saat ini harus masuk ke command prompt dan secara manual menambahkan rute.

misalnya.

ROUTE ADD 10.1.0.0 255.255.0.0 172.16.3.0 METRIC 1 atau apapun perintahnya.

Mungkinkah hal ini terjadi secara otomatis setelah saya berhasil membuat koneksi VPN?

Murni
sumber

Jawaban:

4

Jika Anda ingin menjadikannya sebagai proses 1 langkah, Anda bisa membuat file batch yang menjalankan rasdial untuk mengotomatiskan koneksi VPN Anda dan kemudian melakukan ROUTE ADD:

rasdial "connection name" username password ('*' to prompt for password)
ROUTE ADD 10.1.0.0 255.255.0.0 172.16.3.0 

Ini mengasumsikan Anda terhubung ke Microsoft VPN, tetapi Anda bisa membuat skrip klien OpenVPN dengan cara yang sama:

openvpn c:\path\to\config-file.ovpn
ROUTE ADD 10.1.0.0 255.255.0.0 172.16.3.0 
nedm
sumber
Klien OpenVPN harus secara otomatis menambahkan rute yang sesuai, dengan asumsi itu dikonfigurasi dengan benar.
MDMarra
Benar untuk rute yang ditetapkan / didorong dari server, tetapi mungkin ada rute tambahan yang ingin Anda tetapkan.
nedm
OOO! sekarang itu menarik :) Adalah salah ketik di baris ADD ROUTE .. tapi selain itu .bat tidak berfungsi karena perlu dijalankan dalam mode privilege :(
Pure.Krome
Ya, 'route add' memerlukan hak admin, tetapi Anda harus dapat mengklik kanan ikon taskbar command prompt dan memilih 'Run As Different User' dan masukkan kredensial admin, kemudian jalankan file bat dari baris perintah. Saya akan menempatkan file .bat di direktori mana pun yang melakukan hal itu secara default meninggalkan prompt perintah, jadi Anda bisa mengetikkan 'vpnscript.bat' atau apa pun setelah login tanpa berpindah direktori. Atau, control-shift-click juga harus membuka command prompt dalam mode privilege / admin w / UAC.
nedm
Dengan tip powershell oleh @ErikvO, Anda mengaturnya dan melupakannya, menggunakan koneksi VPN secara normal tanpa memerlukan hak admin.
Laurent
19

Jika Anda memiliki beberapa VPN, Anda mungkin mengalami masalah ketika terhubung secara acak, ID antarmuka mereka berubah. Dalam hal itu normal ROUTE -P ADD 10.0.0.0 MASK 255.255.0.0 10.0.0.1 IF 42tidak berfungsi. Lain kali VPN menghubungkannya mungkin memiliki nomor antarmuka yang berbeda.

Powershell memiliki cmdlet yang tersedia yang menambahkan rute pada koneksi VPN dan menghapusnya lagi ketika VPN terputus: Add-VpnConnectionRoute . Ini berfungsi tanpa harus menentukan ID antarmuka.

Sintaks dasarnya adalah seperti ini:

Add-VpnConnectionRoute -ConnectionName "VPN Connection Name" -DestinationPrefix 10.0.0.0/16

Setelah memasukkan perintah ini, rute akan dibuat / dihapus secara otomatis pada koneksi / pemutusan VPN.

ErikvO
sumber
Seharusnya jawaban yang diterima. BTW Saya tidak tahu tentang itu "PowerShell" sebelum itu ... Saya tidak mengerti mengapa perintah-perintah itu tidak tersedia di CMD. Kebodohan Microsoft lainnya ...
Laurent
+1 untuk Poweshell. Mengalahkan saya mengapa MS tidak menambahkan tab lain dalam pengaturan IP - selain dari fakta mereka masih membangun panel kontrol pengganti untuk UI modern / seluler (saat ini).
Mayyit
1
Windows 7 saya tidak memiliki perintah itu!
LatinSuD
3
netsh interface ipv4 add route [destination/prefixlength] "[interface/connection name]"

Saya menggunakannya untuk menangani koneksi yang memiliki subnet tumpang tindih dengan menambahkan rute statis untuk host di subnet jarak jauh - server dan sejenisnya.

Stuart Smith
sumber
Inilah yang saya butuhkan karena saya menggunakan Windows Server 2008. Solusi PoswerShell tidak berfungsi.
Michael Coxon
Ini bekerja dengan sempurna untuk klien Windows 7 saya. Terima kasih.
Vic
Itu tidak gigih, dan mengharuskan VPN sudah terhubung, kan?
LatinSuD
Itu benar. Masalah yang saya miliki adalah dengan tumpang tindih subnet, sehingga memiliki rute persisten akan menyebabkan masalah. Anda hanya ingin itu terjadi setelah koneksi selesai. Saya melihat menggunakan pemicu acara melalui penjadwal tugas tetapi tidak pernah berhasil secara konsisten. Seharusnya dimungkinkan untuk membuat layanan berlangganan SENS untuk melakukannya (saya pikir koneksi antarmuka dan pemutusan tercakup dalam SENS), tetapi menavigasi konteks keamanan untuk menelurkan proses lain dengan hak admin bermasalah karena UAC. Saya membayangkan itu dapat dilakukan dengan memungkinkan interaksi desktop dan UAC meminta, saya hanya
Stuart Smith
1

Anda bisa membuat rute tetap (saya pikir dengan route -p) sehingga Anda tidak perlu memasukkannya setiap kali. Jika Anda menggunakan openVPN, server dapat mengirim rute ke klien: push "route 192.168.1.0 255.255.255.0"misalnya. Dengan server VPN lain, saya tidak tahu, tetapi saya kira mereka juga memiliki opsi serupa.

laurent
sumber
jadi tidak bisa dibuat, sisi klien .. dan sesuai permintaan?
Pure.Krome
Saya tidak tahu cara untuk melakukannya (dengan openVPN) di sisi klien dan tidak permanen berbeda dari jawaban nedm tetapi akan ada kebutuhan untuk menjalankan file kelelawar dengan hak istimewa admin. Saya pikir rute persisten bukan solusi yang buruk jika Anda tidak dapat mengubah konfigurasi server openVPN.
laurent