WireGuard tidak menampilkan handshake terbaru: apa yang harus diperiksa lebih dulu
Handshake kosong bisa berarti tidak ada yang dikirim. Picu paket yang diizinkan, lalu periksa rute, pasangan kunci, dan jalur UDP luar.
Kolom handshake terbaru yang kosong biasanya berarti antarmuka belum menyelesaikan handshake sejak aktif, yang sebenarnya tidak banyak menjelaskan konfigurasi. WireGuard tetap diam sampai sebuah paket perlu keluar melalui antarmuka, jadi peer yang menganggur tanpa apa pun untuk dikirim melaporkan tepat itu. Pastikan apakah ada yang benar-benar ditawarkan sebelum memeriksa kunci.
Ujinya adalah paket yang diizinkan menuju tujuan yang seharusnya dibawa peer. Semua hal lain di layar status itu menggambarkan niat, bukan aktivitas.
Antarmuka yang menganggur tidak punya apa pun untuk dilaporkan
WireGuard melakukan handshake dengan malas: paket pertama yang membutuhkan terowongan memicu pertukaran, dan antarmuka tetap diam sampai saat itu. Peer yang dikonfigurasi dan tidak pernah dipakai menampilkan handshake kosong, nol byte diterima, dan jarak yang membesar sejak yang terakhir. Keadaan itu wajar untuk klien yang menganggur dan mengkhawatirkan hanya jika Anda mengharapkan lalu lintas sudah mengalir. Periksa juga penghitung transfer, karena keduanya memisahkan tidak-ada-yang-dikirim dari dicoba-dan-gagal.
Jika penghitung di kedua sisi nol, masalahnya ada di hulu terowongan. Tidak ada yang mencapai antarmuka untuk memicu apa pun.
Picu lalu lintas yang boleh dibawa peer
Pilih alamat di dalam prefiks yang diizinkan peer, di mesin lokal, dan pastikan tabel rute akan mengirimkannya melalui antarmuka. Tujuan di luar prefiks itu menghasilkan permintaan terutek biasa tanpa keterlibatan WireGuard sama sekali. Gunakan layanan yang menjawab cepat, seperti ping atau koneksi TCP singkat, agar percobaan punya awal dan akhir yang terlihat. Lalu baca lagi baris handshake alih-alih menatap layar dan menunggu.
ip route get 10.60.9.5
ping -c 3 -W 2 10.60.9.5
wg show wg0 latest-handshakes
wg show wg0 transfer
Kueri rute lebih penting daripada ping. Jika ia menyebut antarmuka fisik, paket tidak pernah masuk terowongan dan handshake kosong adalah jawaban perutean, bukan kriptografis. Perbaiki rute sebelum men-debug peer.
Bandingkan pasangan kunci dan titik akhir
Setelah lalu lintas benar-benar ditawarkan, identitas adalah pemeriksaan berikutnya. Kunci privat lokal harus cocok dengan kunci publik yang diotorisasi sisi jauh, kunci publik jarak jauh yang dikonfigurasi harus mengidentifikasi peer yang dimaksud, dan kunci yang dibagikan sebelumnya harus cocok di kedua ujung. Satu karakter berbeda dalam kunci base64 menghasilkan peer yang tampak terkonfigurasi dan tidak pernah menyelesaikan pertukaran. Bandingkan dengan catatan penyediaan alih-alih membuat ulang kunci, karena kunci baru membatalkan setiap peer yang mempercayai kunci lama.
Titik akhir memerlukan pemeriksaan yang sama: nama host, alamat, port UDP, dan keluarga yang dipakai untuk mencapainya. Alamat yang basi atau port yang salah menghasilkan keheningan, bukan pesan.
Pantau jalur UDP luar
Handshake berjalan sebagai UDP menuju titik akhir, jadi jalur luar harus membawanya. Perintah di bawah memeriksa apakah ada pendengar, apakah tumpukan lokal mengirim datagram, dan titik akhir mana yang dikonfigurasi. Jalankan tangkapan saat memicu lalu lintas, bukan sebelumnya.
ss -lunp | grep 51820
sudo tcpdump -ni eth0 udp port 51820
wg show wg0 endpoints
conntrack -L -p udp | grep 51820
Tangkapan yang menunjukkan inisiasi tanpa balasan menunjuk ke luar mesin, karena ujung jauh entah tidak mendengarkan, tersaring, atau salah alamat. Tangkapan yang tidak menunjukkan apa pun berarti paket tidak pernah keluar, yang mengembalikan Anda ke rute dan ke tanda socket apa pun yang sedang dipakai. Bila Anda mengelola kedua ujung, korelasikan percobaan berdasarkan stempel waktu dengan tangkapan sempit di server alih-alih tangkapan umum. Uji port TCP tidak membuktikan apa pun di sini, karena protokolnya hanya UDP.
Begitu handshake muncul, uji aplikasi melalui terowongan, karena pertukaran yang selesai membuktikan identitas dan keterjangkauan, bukan keluaran yang bisa dipakai atau DNS yang benar. Simpan keluaran status sebelum dan sesudah perubahan, dan selisihnya menjadi bukti Anda.