NetworkManager atau wg-quick: siapa yang memiliki rute WireGuard Anda?
Dua manajer bisa sama-sama mengklaim tautan WireGuard yang sama, dan konfigurasi yang Anda edit mungkin bukan yang berlaku. Temukan pemiliknya dari rute, aturan, dan status antarmuka.
Anda mengubah AllowedIPs di berkas WireGuard, memulai ulang terowongan, dan tabel perutean tampak persis seperti sebelumnya. Reaksi biasa adalah menghapus rute yang mengganggu lalu melanjutkan, yang berhasil sampai koneksi ulang berikutnya mengembalikannya. Berkas yang Anda edit belum tentu objek yang menghasilkan keadaan yang Anda lihat. Dua manajer dapat menjalankan protokol yang sama di satu mesin, dan hanya satu di antaranya yang memiliki antarmuka pada satu waktu.
Mitos: hanya ada satu konfigurasi WireGuard di mesin
wg-quick membaca berkas di /etc/wireguard/ dan membangun antarmuka saat Anda menaikkannya. NetworkManager menyimpan profil koneksi dalam format keyfile-nya sendiri dan menyajikannya saat aktivasi, dan mengimpor berkas wg-quick menyalin nilainya ke dalam profil itu, bukan menautkannya. Mengedit berkas aslinya sesudahnya tidak mengubah apa pun, karena profil tidak lagi membacanya. Daftar peer dan kunci yang sama bisa ada dua kali, dengan salinan kedua yang berlaku.
Tanda yang layak diingat: perubahan yang bertahan setelah reboot tetapi tidak setelah impor ulang berasal dari satu penyimpanan, dan perubahan yang hilang saat reboot berasal dari yang lain.
Satu contoh praktis membuat pemisahannya jelas. Bandingkan nmcli connection show dengan systemctl status wg-quick@wg0, lalu periksa antarmuka mana rute-rute itu sebenarnya bergantung. Jika layanannya mati dan antarmukanya hidup, profil itulah yang bekerja, apa pun kata berkasnya.
Mitos: aturan perutean adalah bagian dari WireGuard
Perangkat WireGuard di kernel mengenal peer dan kunci, dan tidak tahu apa-apa tentang perutean kebijakan. Entri ip rule dan tabel tambahan yang Anda lihat dipasang oleh alat yang menaikkan antarmuka. wg-quick dapat menambahkan fwmark dan tabel khusus plus aturan yang menunjuk ke sana, sementara NetworkManager memasang rute melalui pengaturan ipv4-nya sendiri dan menyerahkan DNS ke backend resolver yang dipakai sistem. Terowongan sama, efek samping berbeda.
Baca ip rule dan ip route show table all sebelum mengubah apa pun, dan catat di tabel mana setiap rute berada. Nomor tabel yang tidak Anda konfigurasi adalah petunjuk kuat tentang alat yang membuatnya.
Mitos: menghapus rute adalah perbaikan
Rute yang dihapus saat berjalan adalah rute yang akan dipasang ulang oleh pemiliknya pada aktivasi berikutnya, dan aktivasi bisa terjadi tanpa Anda: laptop bangun dari tidur, tautan berkedip, layanan dimulai ulang, atau koneksi otomatis NetworkManager. Itulah sebabnya rute yang sama kembali dan mengapa solusi sementara terasa tidak andal, bukan salah. Identifikasi manajernya dulu, baru ubah masukan yang benar-benar dibaca manajer itu.
Menyambung ulang dan memulai ulang layanan terkait adalah uji yang memisahkan perbaikan nyata dari yang hanya tampak rapi.
Pilih satu pemilik dan hapus yang lain
Pilih manajer yang didukung penerapan Anda, lalu nonaktifkan aktivasi pesaing melalui kontrolnya yang terdokumentasi, bukan berharap kontrol itu tetap diam. Layanan wg-quick yang di-mask atau profil NetworkManager yang dihapus bersifat eksplisit; membiarkan keduanya aktif dan membiarkannya berlomba tidak. Pertahankan akses yang berfungsi sebelum menonaktifkan apa pun, karena antarmuka yang membawa sesi jarak jauh Anda mungkin antarmuka yang akan Anda hapus.
Setelah perubahan, verifikasi lalu lintas yang disertakan dan dikecualikan, lalu DNS, lalu reboot sekali. Jika keadaan bertahan setelah reboot dengan satu manajer, Anda punya pemilik, bukan kebetulan.
Aturan umumnya layak dipertahankan di luar WireGuard: ketika suatu pengaturan terus kembali, berhentilah menghapus hasilnya dan temukan proses yang terus menghasilkannya.