Cara menguji kestabilan VPN tanpa merekodkan pelayaran anda
Buktikan kestabilan terowong dengan prob tetap, empat fakta disampel dan log peristiwa bercap masa, bukannya meletakkan pelayaran harian melalui ujian itu.
Anda ingin tahu sama ada terowong bertahan apabila komputer riba tidur, berjalan antara titik akses, atau sejam panggilan, dan anda lebih suka tidak menyerahkan log segala yang anda baca kepada sesiapa semasa mengetahuinya. Tiga perkara menjawabnya: prob tetap, empat fakta yang sama disampel mengikut jadual, dan peristiwa yang mengubahnya dicatat. Sepuluh minit itu mengalahkan sepanjang petang menonton halaman gagal dimuatkan. Log yang akhirnya anda miliki juga cukup pendek untuk dilampirkan pada tiket tanpa menyunting separuh daripadanya.
Tentukan apa maksud stabil
“VPN terputus” ialah empat kegagalan berbeza dalam satu perkataan. Peer boleh kehilangan jabat tangan, laluan boleh kembali ke gerbang tempatan, penyelesaian nama boleh pergi ke pelayan yang tidak pernah menjawab melalui terowong, atau semua itu boleh sihat sementara satu aplikasi masih gagal. Tentukan yang mana sepadan dengan gejala anda sebelum mengumpul apa-apa, kerana setiap satu memerlukan prob berbeza. Kemudian pilih selang yang mampu anda kekalkan: satu sampel setiap tiga puluh saat selama sepuluh minit menangkap perayauan tanpa menjadikan ujian itu beban kerja.
Jika aduannya ialah panggilan yang membeku apabila anda berjalan ke dapur, sifat yang anda perlukan ialah sama ada permintaan baharu selesai selepas perayauan. Itu boleh diperiksa dalam satu baris dan ia tidak merekodkan sebarang pelayaran.
Tetapkan satu prob tidak berbahaya
Pilih destinasi yang anda dibenarkan menanyanya dan tidak terikat pada akaun anda: hos dokumentasi, titik akhir status dalaman, atau gerbang terowong itu sendiri. Jadikan operasi boleh diulang, contohnya curl -s -o /dev/null -w "%{http_code} %{time_total}\n" https://example.com/, yang mencetak satu baris setiap percubaan. Kekalkan format output itu sepanjang larian. Kod status dan tempoh yang dikumpul dengan cara yang sama dua kali itulah yang menjadikan dua larian boleh dibandingkan.
Lawan laman yang sebenarnya anda harapkan. Halaman bank atau mel web menyeret penjejak, ubah hala dan kandungan peribadi ke dalam ukuran, dan ia mencetak pengecam sesi ke dalam apa sahaja yang anda tampal pada tiket kemudian. Gunakan destinasi yang sama sepanjang siasatan, dan catatkannya di sebelah selang.
Sampel keempat-empat fakta
Keadaan peer, laluan, penyelesai dan satu permintaan baharu ialah empat pemerhatian, dan setiap satu mempunyai sumber murah. Pada WireGuard, wg show wg0 latest-handshakes memberikan cap masa peer dan ip route get 1.1.1.1 menunjukkan antara muka mana yang akan digunakan oleh kernel. Pada OpenVPN keadaan yang sama terdapat dalam fail status yang ditulis oleh --status /run/openvpn/status 10 atau di sebalik state pada antara muka pengurusan. Klien Windows kekal dalam PowerShell dengan Get-NetAdapter dan Resolve-DnsName.
Gelungkan semuanya dalam satu terminal supaya setiap baris membawa cap masa: for i in $(seq 1 20); do date -Is; wg show wg0 latest-handshakes; ip route get 1.1.1.1; sleep 30; done. Gelung itu meliputi tiga daripada enam medan log; versi klien dimasukkan sekali di atas, dan cap masa peristiwa ditambah apabila peristiwa berlaku.
Penyelesai ialah fakta yang orang langkaui, dan dig +short menyembunyikannya, kerana bentuk itu hanya mencetak jawapan. Tanyakan pelayan itu secara jelas dengan dig example.com | grep SERVER:, atau gunakan nslookup example.com di tempat dig tidak dipasang, yang mencetak alamat pelayan tempat pertanyaan itu pergi. Jabat tangan lama pada terowong terbiar juga bukan kerosakan secara automatik, kerana WireGuard hanya menukar kunci apabila ada trafik untuk dilindungi.
Picu peristiwa, bukan kebocoran
Ambil lima minit tenang sebagai garis dasar sebelum peristiwa yang anda pedulikan, sama ada menutup penutup, berjalan ke titik akses lain, atau bertukar ke hotspot telefon. Catat masa anda memicunya, supaya sampel di kedua-dua belah dapat disejajarkan.
Tanpa cap masa itu log menunjukkan jurang dan tiada siapa boleh mengatakan sama ada klien atau rangkaian yang menutupnya. Dua larian dengan peristiwa di tempat berbeza lebih bernilai daripada sepuluh tanpanya. Gunakan kawalan putus dan sambung semula klien itu sendiri. Jangan matikan suis bunuh atau menolak trafik ke luar terowong untuk melihat apa yang berlaku, kerana pada komputer riba terurus itu pelanggaran dasar dan pada mesin anda sendiri ia mencipta tepat pendedahan yang anda uji.
Simpan log cukup kecil untuk diselesaikan
Enam medan setiap sampel: masa, versi klien, titik akhir, rangkaian akses, peristiwa, keputusan. Tinggalkan alamat web, muatan, token dan apa sahaja yang membawa pengecam sesi, kerana log ialah bukti tentang terowong dan bukan yang lain. Simpan di sebelah gelung supaya orang seterusnya boleh menjalankannya semula tanpa bertanya apa maksud lajur itu.
Selepas perubahan, ulangi ujian dengan prob yang sama dan selang yang sama; jika anda menukar destinasi dan versi klien serentak, keputusannya bukan milik mana-mana satu. Larian bersih sepuluh minit ialah bukti untuk keadaan dan destinasi itu, bukan janji tentang rangkaian hotel bulan depan. Simpan skrip dan templat log di tempat anda akan menemukannya. Batasan yang didokumenkan WireGuard wajar dibaca sebelum anda menyalahkan protokol atas pemutusan.