Menjalankan dua klien VPN sekaligus adalah perdebatan perutean, bukan pengaturan privasi. Terowongan mana pun yang memiliki rute lebih spesifik menerima lalu lintas, dan yang lain tetap terhubung tetapi menganggur. Gateway korporat kemudian melihat koneksi yang datang dari jalan keluar pribadi, sementara klien korporat di mesin Anda masih melihat setiap adaptor. Memutuskan fakta mana dari keduanya yang penting adalah seluruh latihannya.

Tabel rute memilih satu pemenang

Ambil tabel sebelum dan sesudah klien korporat mulai, lalu baca kolom antarmuka, bukan hanya tujuannya. Rute default biasa dari terowongan luar mudah digeser, karena pasangan /1 lebih spesifik daripada /0. Pasangan literal 0.0.0.0/1 dan 128.0.0.0/1 mencakup seluruh ruang IPv4 dalam dua bagian dan mengalahkan rute default tunggal mana pun. Setelah dipasang, terowongan luar tetap tampak terhubung dan tidak membawa apa pun.

ip route show default
ip route show | grep -E '^(0.0.0.0/1|128.0.0.0/1)'

Perutean kebijakan dapat menimpa tabel utama sepenuhnya, jadi baca aturan sekaligus rutenya. Aturan yang mengirim lalu lintas bertanda ke tabel lain menang sebelum tabel utama diperiksa. Begitulah satu aplikasi dapat tetap di tautan fisik sementara semua yang lain memakai terowongan.

ip rule show

Windows memutuskannya dengan metrik

Di Windows pemenangnya adalah rute dengan metrik terendah untuk tujuan, dan dua klien dapat sama-sama memasang rute default dengan metrik berbeda. Baca tabel dan konfigurasi antarmuka bersama-sama, karena adaptor dengan metrik lebih rendah tidak selalu yang Anda duga. Klien yang juga menyetel metrik antarmuka dapat menggeser rute default tanpa menambahkan satu rute pun. Adaptor yang kalah tetap menyala dan sekadar tidak menerima apa pun.

route print -4
Get-NetIPConfiguration | Select-Object InterfaceAlias, IPv4DefaultGateway

Bandingkan kedua keluaran dan sebutkan antarmuka yang memiliki 0.0.0.0/0. Jika kedua klien mengklaimnya, metrik yang memutuskan, itulah sebabnya uji urutan koneksi bisa tampak tidak konsisten di berbagai mesin. Jika tidak ada keluaran yang menunjukkan gateway default, klien tidak berjalan dalam terowongan penuh dan argumen rantainya tidak relevan.

Dua pengamat, dua pandangan berbeda

Gateway jarak jauh melihat satu koneksi yang datang dari jalan keluar luar ditambah apa pun yang diteruskan klien ke terowongannya. Klien lokal melihat adaptor, rute, dan keberadaan terowongan lain, karena ia berjalan dengan hak istimewa untuk membuatnya. Memisahkan pandangan itu adalah intinya; mengklaim klien tidak bisa menyadarinya bukan.

Anggap klien dapat menghitung apa pun yang ia mau, dan rencanakan untuk pandangan gateway sebagai gantinya. Desain yang bergantung pada klien tetap buta hanya berjarak satu pembaruan dari rusak.

DNS dan IPv6 adalah tempat rantai itu bocor

DNS mengikuti pengaturan resolver mana pun yang menang, dan itu belum tentu jalur yang ditempuh paket. Resolver korporat yang dicapai melalui terowongan korporat konsisten dengan desain; resolver lokal yang dicapai di luarnya tidak, dan itu membeberkan nama yang seharusnya disembunyikan terowongan. IPv6 adalah kebocoran kedua: host dual-stack terus memakai IPv6 menuju tujuan yang hanya dibawa terowongan lewat IPv4. Periksa keluarganya secara terpisah, karena terowongan hanya-IPv4 tidak mengatakan apa pun tentang rute atau resolver IPv6.

ip -6 route show default
resolvectl status | grep -A2 'DNS Servers'

Perbaiki resolver dan rute IPv6 dengan sengaja alih-alih menumpuk terowongan kedua di atasnya. Enkapsulasi ganda juga memakan MTU, jadi MTU dalam yang lebih kecil adalah hal pertama yang perlu dicoba ketika halaman macet setelah rantai menyala. Resolver yang menjawab cepat bukan bukti bahwa itu resolver yang benar.

Artikel terkait