Saya ingin menggunakan VPN Windows tetapi hanya untuk jaringan tertentu, sehingga tidak mengambil alih seluruh koneksi jaringan saya.
misalnya, Alih-alih VPN menjadi rute default, jadikan hanya rute untuk 192.168.123.0/24
(Saya dapat melihat bahwa ada solusi untuk ini untuk Ubuntu dalam pertanyaan ini , tetapi kadang-kadang saya harus melakukan ini pada Windows juga)
Bisakah ini diotomatiskan sehingga setiap kali saya terhubung ke VPN ia melakukan ini?
windows
networking
vpn
routing
Legooolas
sumber
sumber
Jawaban:
Anda dapat mematikan pengambilan alih seluruh koneksi Anda dengan membuka properti VPN,
Networking
tab,Internet Protocol (TCP/IP)
propertiesAdvanced
,, untickUse default gateway on remote network
. Ini mungkin atau mungkin tidak meninggalkan rute192.168.123.0/24
tergantung pada pengaturan server VPN. Jika tidak, Anda harus menambahkan rute secara manual setiap kali, meskipun Anda bisa memasukkannya ke dalam file batch.Untuk menambahkan rute secara manual, jalankan (sebagai administrator):
Contoh ini akan membuat rute yang persisten (tidak perlu menjalankan perintah setelah reboot) ke IP
192.168.0.12
melalui gateway VPN10.100.100.254
.Lebih lanjut tentang ini di http://technet.microsoft.com/en-us/library/bb878117.aspx
sumber
Saya berhasil menggunakan teknik @ TRS-80 untuk mencapai ini.
Saya bekerja dari rumah dan harus VPN ke jaringan perusahaan untuk email saya (saya benci webmail !!).
Pada saat yang sama, saya harus terus berselancar untuk mendapatkan info dan juga membutuhkan youtube untuk musik latar belakang saya ... Sekarang Anda pasti tidak ingin melakukan streaming youtube dari VPN karena itu membuatnya seperti Robot Singing !!! :)
Yang saya lakukan adalah mengikuti @ TRS-80:
dan kemudian lakukan sendiri:
Semua bekerja dengan mulus!
sumber
Mengabulkan jawaban ini tidak mencerminkan permintaan Anda, tetapi saya menggunakan VM khusus untuk tujuan ini. Dengan begitu hanya jaringan di dalam VM yang dibatasi oleh rute.
Anda mungkin menemukan beberapa jawaban yang lebih baik oleh orang lain tetapi setidaknya ini dapat memberi Anda sesuatu untuk dipertimbangkan karena ini merupakan solusi yang mudah setelah VM dibuat.
sumber
Saya menemukan bahwa itu perlu langsung menunjuk antarmuka dalam perintah rute. Tanpa itu, Windows akan menggunakan antarmuka kartu jaringan utama, bukan VPN. Dalam kasus saya, sepertinya
catat 'IF 26'.
sumber
Gunakan cmdlet Add-VpnConnectionRoute di Windows 8+.
sumber
jika Anda memiliki IPV4 dan IPV6, Anda harus menghapus centang "Gunakan gateway default pada jaringan jarak jauh" di kedua tempat, bahkan jika Anda hanya menggunakan IPV4
sumber
Jika Anda menggunakan CMAK dan menyiapkan file perutean yang dapat diunduh klien ... windows akan mengunduh file perutean & sesuaikan rute yang sesuai. Ada opsi untuk menghapus rute default ... dan menambahkan berbagai rute statis & semacamnya. Ini dikenal sebagai btw split-tunnel.
Ada caranya di sini: http://blogs.technet.com/b/rrasblog/archive/2007/06/11/split-tunnelling-using-cmak.aspx
sumber
Saya ingin menambahkan solusi saya ke dalam campuran. Ini berjalan pada shell UNIX Cygwin-powered pada Windows 7 atau lebih baru tetapi juga harus bekerja dengan MSYS2, Bash-on-Windows [WSL] setelah membangun 14986, atau Busybox untuk Windows). Perlu dijalankan dengan hak istimewa admin.
Ini memiliki beberapa pengaturan dan mencoba untuk mendeteksi beberapa hal yang tidak Anda atur secara eksplisit. Itu juga menetapkan nomor antarmuka (IF) secara eksplisit untuk melawan beberapa masalah yang dimiliki beberapa pengguna (seperti saya) dengan solusi lain di sini.
Perlu juga dicatat bahwa mungkin perlu secara manual menetapkan metrik rendah atau jika tidak, rute default akan cocok sebelum lalu lintas diperuntukkan untuk VPN. Anda melakukan ini dengan masuk ke pengaturan adaptor tempat Anda membuka item menu "... Properties" untuk adaptor VPN → "Networking" → → "Internet Protocol Version 4 (TCP / IP)" Properties → "Advanced" → dan Anda tidak hapus centang di sana yang "Automatic metrik" kotak centang (di samping "Menggunakan default gateway ..." tentu saja) dan menetapkan nilai dalam "interface metrik:" lapangan untuk nilai yang lebih rendah daripada rute default (lihat
ROUTE.EXE -4 print
output).sumber
Agak lama tapi saya menemukan cara untuk melakukan ini menggunakan komputer lain. Saya punya laptop tempat saya mengatur koneksi VPN dan di sana saya punya FreeProxy diatur dengan Socks5 ..
Kemudian saya mengatur firefox pada mesin klien saya untuk menggunakan server proxy laptop .. hasilnya adalah jika saya menggunakan FireFox atau apa pun yang diatur untuk menggunakan proxy Socks5 itu, ia akan menggunakan VPN, jika tidak menggunakan perutean standar ..
sumber
Anda dapat menggunakan sesuatu seperti netcatcher - cukup tambahkan semua rute yang Anda butuhkan satu kali dan lupakan saja. Ini akan secara otomatis menambah dan menghapus rute ketika Anda menghubungkan atau memutuskan sesi VPN Anda. Jika alamat IP VPN Anda diperoleh secara dinamis (DHCP), netcatcher akan menangkapnya dan memperbarui rute dengan cara yang benar.
sumber
dari forum rusia: http://forum.ixbt.com/topic.cgi?id=14:43549
simpan sebagai file (mis: vpn_route.vbs) dan setelah vpn terhubung jalankan perintah
vpn_route.vbs:
sumber
Ini tidak dapat dilakukan di Windows tanpa menggunakan program tambahan, file batch, atau baris perintah. Alternatifnya adalah dengan mendapatkan mesin virtual (atau fisik) yang dapat Anda gunakan untuk menjalankan VPN.
Tampaknya aneh bahwa sesuatu yang mudah dijelaskan seperti ini sangat sulit dicapai. Seberapa sulitkah untuk hanya mengarahkan lalu lintas dari satu program ke antarmuka VPN dan semua program lainnya ke antarmuka NIC default? Mengapa kita perlu mengatur seluruh mesin virtual untuk itu? Dan dengan Linux itu mungkin tetapi solusinya juga tidak terlalu elegan.
Ini sangat banyak dicari juga: Saya menemukan puluhan utas tentang topik yang sama. Jadi saya hanya berharap seseorang menyadari kegilaan ini dan melakukan sesuatu untuk itu. (Di Windows 8!)
Solusi ini berasal dari file batch yang tidak disalurkan . Itu telah sedikit diadaptasi.
Petunjuk untuk Windows 7
Skrip akan terhubung ke dan merutekan lalu lintas melalui VPN Anda sampai reboot - Anda dapat mengganti
route add
denganroute -p add
agar perubahan tetap ada, tetapi jika Anda tidak memiliki IP persisten dengan VPN Anda, ia pada akhirnya akan berhenti berfungsi ketika IP VPN Anda berubah.Networking
tabProperties
Advanced
Use default gateway[...]
Anda harus mengganti yang berikut dalam skrip:
<VPN>
dengan Nama koneksi VPN yang Anda buat<USER>
dengan nama pengguna VPN<PASS>
dengan kata sandi VPN<TARGET>
dengan alamat IP yang Anda inginkan dialihkan melalui VPN (jika Anda ingin merutekan lebih banyak alamat, cukup duplikat tiga baris tempat target digunakan)Catatan: Jika Anda tidak ingin menyimpan sandi pada file tersebut, ganti
<PASS>
dengan%password%
dan menambahkan berikut setelah baris pertama dari script:set password= Input password:
.Naskah
sumber
Panduan 'singkat' untuk pemula seperti saya, yang tidak tahu banyak tentang jaringan. Tidak banyak yang baru di sini, tetapi ringkasan dari semua opsi bagus yang dijelaskan dalam jawaban sebelumnya dan di utas terkait lainnya. Seluruh prosedur terdiri dari 3 langkah dasar:
1) Jadikan semua lalu lintas TIDAK melalui VPN. Untuk ini, Anda harus menghapus
Use default gateway on remote network
centang pada pengaturan VPN. Pastikan untuk menghapus centang pada kotak centang ini untuk IPv4 dan IPv6. Biasanya saya cukup menonaktifkan protokol IPv6 sepenuhnya untuk koneksi VPN.(!) Mungkin (kadang-kadang) tidak mencentang bahwa kotak centang akan cukup untuk pekerjaan normal - dalam pengalaman saya, rute yang diperlukan (yang akan mengarahkan lalu lintas yang diperlukan melalui VPN) dapat ditambahkan secara otomatis setelah koneksi VPN dibuat. Saya tidak tahu persis di mana dan bagaimana aturan-aturan ini dikonfigurasi, tetapi skenario seperti itu ada - mungkin itu adalah sihir yang dilakukan oleh administrator jaringan VPN.
2) Buat hanya lalu lintas yang diperlukan melalui VPN. Untuk ini, Anda perlu menentukan rute. Di sini Anda memiliki 3 opsi:
2.1) Tambahkan rute permanen melalui gateway VPN:
route -p add a.b.c.d/<CIDR> w.x.y.z
atauroute -p add a.b.c.d mask e.f.g.h w.x.y.z
di mana 'VPN gateway' = 'IP Anda di jaringan VPN' =
w.x.y.z
dan alamat target / jaringan =a.b.c.d
. Anda dapat menemukanw.x.y.z
dengan mengeksekusiipconfig
dan mencari nama koneksi VPN Anda atau, jika Anda menggunakan PowerShell, Anda bisa mendapatkan output yang kompak dengan mengeksekusiipconfig | grep -A5 PPP
(yang akan menghasilkan 5 baris setelah menemukan setiap koneksi PPP).Cons: Anda harus membuat kembali rute jika IP VPN Anda akan berubah.
2.2) Tambahkan rute permanen melalui antarmuka jaringan VPN:
route -p add a.b.c.d/<CIDR> 0.0.0.0 IF <interface number>
di mana
a.b.c.d
alamat target / jaringan daninterface number
pengidentifikasi koneksi VPN Anda. ID ini dapat ditemukan dengan mengeksekusinetstat -rn
, atau, untuk output yang lebih kompaknetstat -rn | grep -A10 'Interface List'
,.Pro: tidak perlu mengubah apa pun jika alamat VPN Anda (
w.x.y.z
) akan berubah.Cons: perlu membuat kembali rute dengan ID baru jika Anda menghapus koneksi VPN Anda.
2.3) Gunakan cmdlet PowerShell:
Add-VpnConnectionRoute -ConnectionName '<VPN connection name>' -DestinationPrefix a.b.c.d/<CIDR>
Kelebihan: rute yang diperlukan ditambahkan setiap kali koneksi VPN dibuat dan dihapus setiap kali terputus.
Cons: tidak ada
Get-VpnConnectionRoutes
cmdlet sehingga sulit untuk mengelola aturan ini.3) Periksa dan pastikan rute berfungsi seperti yang diharapkan!
Jika Anda menambahkan rute persisten, Anda dapat memeriksanya dengan mengeksekusi
netstat -rn | grep -A10 'Persistent Routes'
.Dan, akhirnya, jalankan beberapa
tracert
perintah terhadap kedua alamat IP yang seharusnya diakses melalui VPN dan terhadap mereka yang seharusnya bekerja tanpa VPN.sumber