WireGuard gagal selepas melahu: uji arah dahulu
Pemetaan NAT tamat tempoh, radio tidur dan aplikasi lama kelihatan sama selepas tempoh tenang. Uji trafik masuk dan keluar secara berasingan sebelum menambah keepalive.
Empat soalan mendahului setiap perubahan tetapan: adakah sumber yang sama berfungsi semasa klien aktif, berapa lama tempoh melahu, adakah peranti tidur atau bertukar rangkaian, dan adakah kegagalan hanya muncul pada trafik yang dimulakan oleh pihak bertentangan. Jawapan memisahkan pemetaan NAT tamat tempoh daripada radio yang tidur dan daripada aplikasi lama. Ia juga memberitahu sama ada keepalive langsung relevan. Mulakan dengan arah, kerana ia hanya memerlukan satu arahan dan menyingkirkan separuh punca yang mungkin.
Arah mana yang gagal?
Permintaan keluar baharu daripada klien dan trafik yang tiba ke arahnya selepas tempoh tenang menguji peranti berkeadaan secara berbeza. Paket keluar membina semula pemetaan semasa keluar, manakala paket masuk memerlukan pemetaan lama masih hidup. Asimetri itulah keseluruhan ujian. Jika klien boleh keluar tetapi tiada apa masuk, pemetaan itu mungkin telah tamat tempoh, dan jika kedua-duanya tidak berfungsi, terowong atau akses rangkaian klien telah hilang.
Catat berapa lama tempoh tenang berlangsung dan sama ada peranti tidur atau berpindah ke rangkaian lain dalam pada itu. Dua fakta itu mengubah diagnosis sebelum sebarang tetapan.
wg show wg0 latest-handshakes
wg show wg0 endpoints
wg show wg0 transfer
Jalankan ketiga-tiga itu sebelum dan selepas tempoh tenang, kerana setiap satu menjawab bahagian soalan yang berbeza. Cap masa handshake yang tidak bergerak mengatakan kedua-dua pihak berhenti bercakap, manakala titik hujung yang berubah mengatakan pemetaan bergerak dan bukan mati. Pembilang pemindahan menunjukkan sama ada apa-apa tiba, dan itulah perbezaan antara pemetaan lama dan aplikasi senyap. Tulis nombor itu pada kedua-dua titik, kerana perbandingan itulah buktinya.
Tidur, radio dan keadaan aplikasi
Pada telefon atau komputer riba, peranti yang tidur mungkin telah kehilangan akses rangkaian sepenuhnya, dan keepalive tidak boleh memulihkan radio yang dimatikan atau menyelesaikan portal tawanan yang belum dipenuhi. Platform mudah alih menggantung kerja latar sebagai dasar, jadi sama ada trafik berkala berterusan bergantung pada platform dan pada apa yang telah dirundingkan oleh aplikasi dengannya. Sambungan yang dicache ialah kes ketiga dan paling mengelirukan, kerana kembalinya terowong bukanlah sama dengan aplikasi menyambung semula kepadanya.
Buka semula aplikasi selepas tempoh melahu dan bukan mempercayai tab yang kekal terbuka. Jika permintaan baharu berjaya di tempat sesi lama gagal, terowong itu tidak pernah menjadi masalah.
Apa sebenarnya keepalive lakukan
PersistentKeepalive menghantar paket kosong yang disahkan secara berkala kepada rakan, yang cukup untuk mengekalkan pemetaan NAT hidup antara rakan dan memastikan titik hujung pihak bertentangan terkini, seperti yang diterangkan oleh permulaan pantas WireGuard. Ia tidak membaiki radio yang tidur, laluan yang hilang atau aplikasi yang tidak pernah mencuba lagi. Pilih selang melalui tetapan klien yang disokong, dan jangan aktifkan nilai agresif di merata tempat hanya kerana paparan status menjadi senyap.
Kebanyakan tempoh melahu bukan kegagalan. Terowong yang bersambung semula selepas lima minit senyap berkelakuan betul, dan masalahnya hanyalah kes apabila sesuatu sepatutnya tiba dari pihak bertentangan.
Tunggu selang yang dahulunya gagal
Lakukan satu perubahan yang disokong, kemudian biarkan tempoh melahu yang sama berlalu sebelum menguji semula sumber itu. Menunggu ialah sebahagian daripada ujian dan bukan formaliti. Kejayaan segera selepas bersambung semula tidak mengatakan apa-apa tentang simptom melahu panjang, kerana bersambung semula itulah peristiwa yang menetapkan semula keadaan. Jika masalah juga muncul semasa penggunaan aktif, kembali kepada pemeriksaan handshake dan laluan data dan bukan menambah lebih banyak trafik berkala.
Kekalkan satu perubahan bagi setiap ujian dan catat tempoh melahu yang digunakan. Tanpanya, setiap perbandingan kemudian melencong dan tiada siapa boleh mengatakan perubahan mana yang penting. Catat keempat-empat fakta bersama: arah, tempoh, keadaan tidur dan tingkah laku aplikasi.