Penghitung jabat tangan diperbarui, antarmuka mempertahankan alamatnya, dan ping ke sisi seberang tidak sampai ke mana pun. Kombinasi itu membingungkan orang karena jabat tangan yang berhasil terasa seperti bukti bahwa terowongan siap. Padahal bukan: terowongan bisa sudah dinegosiasikan sepenuhnya dan tetap tidak punya rute yang mengarahkan lalu lintas ke dalamnya, dan keduanya adalah dua pekerjaan terpisah yang dijalankan oleh dua bagian keadaan terpisah. Perbaikannya sepenuhnya bergantung pada mana dari keduanya yang hilang, jadi langkah pertama adalah mengetahuinya.

wg-quick melakukan keduanya tanpa diminta. Dukungan WireGuard bawaan NetworkManager juga memasang rute peer secara default, yang mempersempit tersangka menjadi opsi yang dinonaktifkan, tabel perutean lain, atau konfigurasi yang diimpor lewat hal lain.

Pastikan terowongan sebelum mengejar rute

wg show mencetak antarmuka, peer, titik akhir, dan usia jabat tangan terakhir, dan ip addr show memastikan alamatnya ada. Jabat tangan yang baru berarti kunci, titik akhir, dan jalur UDP berfungsi. Apa pun yang rusak berada di hilirnya: perutean, penyaringan, atau resolusi nama.

Lalu tanyakan kepada kernel apa yang akan dilakukannya dengan tujuan nyata alih-alih hipotetis: ip route get 10.42.7.9. Jawabannya menyebut antarmuka keluar dan alamat sumber yang akan dibawa paket. Ketika ia menyebut adaptor fisik, paket tidak pernah masuk ke terowongan seberapa pun sehatnya jabat tangan.

AllowedIPs adalah penyaring dan daftar rute

Prefiks di AllowedIPs melakukan dua pekerjaan. Mereka memilih peer mana yang membawa tujuan keluar, dan mereka memvalidasi alamat sumber paket masuk, yang merupakan batas perutean kunci kripto. Di wg-quick mereka juga menggerakkan pemasangan rute otomatis, dan perilaku tambahan itulah sebabnya konfigurasi yang sama berfungsi dari terminal dan bukan dari klien desktop.

Dalam kasus di balik artikel ini, profil diimpor lewat plugin pihak ketiga alih-alih lewat dukungan bawaan, dan antarmuka muncul tanpa rute prefiks. Mencantumkan tabel langsung menunjukkannya: ip route show hanya berisi rute tersambung untuk alamat antarmuka, dan tidak ada untuk rentang jarak jauh.

Tanyakan apakah rute peer diaktifkan sama sekali

Baca pengaturannya sebelum mengubah apa pun: nmcli -f wireguard.peer-routes,ipv4.route-table connection show work-wg. Ketika peer-routes menampilkan no, perbaikan yang didukung adalah nmcli connection modify work-wg wireguard.peer-routes yes, diikuti dengan menyambung ulang. Menambahkan rute statis sebagai gantinya berfungsi sampai aktivasi berikutnya lalu menghilang diam-diam. Hilangnya itulah petunjuknya: rute yang kembali sebagai misteri setiap pagi tidak dipasang oleh profil.

Jika opsi sudah diaktifkan, periksa apakah prefiks berada di tabel lain dengan ip route show table all | grep 10. Rute di tabel yang bukan tabel utama tidak hilang, ia hanya tidak terlihat oleh pencarian yang hanya melihat tabel utama. Perbaiki perutean kebijakan alih-alih menumpuk entri duplikat di atasnya.

Tambahkan prefiks ke koneksi, bukan ke sistem yang berjalan

Di editor koneksi, halaman WireGuard memuat peer dan AllowedIPs-nya, dan halaman IPv4 memuat rute tambahan. Rute yang ditambahkan di sana bertahan melewati penyambungan ulang karena milik profil. Di baris perintah padanannya adalah melampirkan rute ke koneksi dengan bentuk gerbang kosong, lalu menurunkan dan menaikkan koneksi agar perubahan diterapkan.

Pilih prefiks tersempit yang mencakup host yang Anda butuhkan. Menyalin contoh /8 dari penyedia dapat menelan rentang lokal yang kebetulan berada di dalamnya, dan kegagalan yang muncul tampak seperti terowongan rusak alih-alih rute yang terlalu lebar.

Terowongan terbelah ditentukan oleh daftar prefiks

Tidak ada sakelar terowongan terbelah; daftar prefiks adalah keputusannya. Peer dengan satu rentang untuk LAN kantor dan satu untuk jaringan laboratorium mengirim persis tujuan itu lewat terowongan dan membiarkan sisanya. Satu host memerlukan /32, dan rentang yang tumpang tindih di dua lokasi memerlukan prefiks host sampai seseorang menomori ulang subnet.

Memilih untuk tidak mengirim apa pun lewat terowongan membawa keputusan yang sama ke batasnya: daftar minimal membuat tautan tetap hidup sementara lalu lintas biasa mengikuti jalur biasanya. Tuliskan niatnya, karena jika tidak pembaca berikutnya akan menganggap daftar pendek itu kelalaian dan dengan sukarela memperpanjangnya.

Satu pemilik untuk tabel rute

wg-quick dan NetworkManager sama-sama yakin mereka memiliki rute antarmuka. Impor konfigurasi yang ditulis untuk wg-quick lalu jalankan juga layanan wg-quick, dan Anda mendapat entri ganda atau bertentangan yang perilakunya bergantung pada mana yang berjalan terakhir. Pilih satu pemilik dan hapus yang lain: jika NetworkManager mengelola koneksi, nonaktifkan unit wg-quick untuk antarmuka itu, dan jangan pernah menambahkan profil kedua untuk perangkat yang sama.

Ketika pembelahan harus mengikuti adaptor fisik alih-alih tujuan, Anda telah pindah ke perutean kebijakan, dan perutean kebijakan juga memerlukan satu penulis. Verifikasi dengan mengulangi ip route get, lalu menjangkau host di dalam prefiks jarak jauh dengan sesuatu yang mencetak alamat sumber yang dipilihnya. Periksa IPv6 dan DNS secara terpisah jika profil membawa salah satunya.

Artikel terkait