WireGuard AllowedIPs: laluan yang tidak pernah ditambah NetworkManager
Profil WireGuard yang sah boleh menamatkan jabat tangan dan masih tidak menghantar apa-apa. Bandingkan jadual kernel dengan AllowedIPs, kemudian beri laluan itu seorang pemilik.
Pembilang jabat tangan dikemas kini, antara muka mengekalkan alamatnya, dan ping ke sebelah sana tidak sampai ke mana-mana. Gabungan itu mengelirukan orang kerana jabat tangan yang berfungsi terasa seperti bukti bahawa terowong sudah sedia. Ia tidak: terowong boleh dirunding sepenuhnya dan masih tiada laluan yang mengarahkan trafik ke dalamnya, dan itu dua kerja berasingan yang dilakukan oleh dua keping keadaan berasingan. Pembetulan bergantung sepenuhnya pada yang mana satu daripada dua itu hilang, jadi langkah pertama ialah mengetahuinya.
wg-quick melakukan kedua-duanya tanpa diminta. Sokongan WireGuard terbina dalam NetworkManager juga memasang laluan peer secara lalai, yang menyempitkan suspek kepada pilihan yang dimatikan, jadual penghalaan lain, atau konfigurasi yang diimport melalui sesuatu yang lain.
Sahkan terowong sebelum mengejar laluan
wg show mencetak antara muka, peer, titik akhir dan usia jabat tangan terakhir, dan ip addr show mengesahkan alamat itu wujud. Jabat tangan baru bermaksud kunci, titik akhir dan laluan UDP berfungsi. Apa-apa yang rosak terletak di hilirnya: penghalaan, penapisan atau penyelesaian nama.
Kemudian tanya kernel apa yang akan dilakukannya dengan destinasi sebenar dan bukan hipotetikal: ip route get 10.42.7.9. Jawapannya menamakan antara muka keluar dan alamat sumber yang akan dibawa paket itu. Apabila ia menamakan penyesuai fizikal, paket itu tidak pernah masuk ke terowong, sesihatan mana pun jabat tangan kelihatan.
AllowedIPs ialah penapis dan senarai laluan
Awalan dalam AllowedIPs melakukan dua tugas. Ia memilih peer mana yang membawa destinasi keluar, dan ia mengesahkan alamat sumber paket masuk, iaitu sempadan penghalaan kunci kripto. Dalam wg-quick ia juga memacu pemasangan laluan automatik, dan tingkah laku tambahan itulah sebabnya konfigurasi yang sama berfungsi dari terminal dan bukan dari klien desktop.
Dalam kes di sebalik artikel ini, profil itu diimport melalui pemalam pihak ketiga dan bukan melalui sokongan terbina dalam, dan antara muka naik tanpa laluan awalan. Menyenaraikan jadual menunjukkan perkara itu serta-merta: ip route show hanya mengandungi laluan bersambung bagi alamat antara muka, dan tiada apa-apa untuk julat jauh.
Tanya sama ada laluan peer dihidupkan sama sekali
Baca tetapan sebelum mengubah apa-apa: nmcli -f wireguard.peer-routes,ipv4.route-table connection show work-wg. Apabila peer-routes menunjukkan no, pembaikan yang disokong ialah nmcli connection modify work-wg wireguard.peer-routes yes, diikuti dengan penyambungan semula. Menambah laluan statik sebaliknya berfungsi sehingga pengaktifan seterusnya dan kemudian hilang secara senyap. Kehilangan itulah petunjuknya: laluan yang kembali sebagai misteri setiap pagi tidak dipasang oleh profil.
Jika pilihan itu sudah dihidupkan, semak sama ada awalan itu tinggal dalam jadual lain dengan ip route show table all | grep 10. Laluan dalam jadual yang bukan jadual utama tidak hilang, ia hanya tidak kelihatan kepada carian yang melihat jadual utama sahaja. Betulkan penghalaan dasar dan bukannya menyusun entri pendua di atasnya.
Tambahkan awalan pada sambungan, bukan pada sistem yang sedang berjalan
Dalam penyunting sambungan, halaman WireGuard memegang peer dan AllowedIPs-nya, dan halaman IPv4 memegang laluan tambahan. Laluan yang ditambah di situ bertahan melalui penyambungan semula kerana ia milik profil. Pada baris arahan, persamaannya ialah melampirkan laluan pada sambungan dalam bentuk get laluan kosong, kemudian menurunkan dan menaikkan sambungan supaya perubahan itu digunakan.
Pilih awalan paling sempit yang meliputi hos yang anda perlukan. Menyalin contoh /8 penyedia boleh menelan julat setempat yang kebetulan berada di dalamnya, dan kegagalan yang terhasil kelihatan seperti terowong rosak dan bukan laluan yang terlalu lebar.
Terowong terbelah ditentukan oleh senarai awalan
Tiada suis terowong terbelah; senarai awalan itulah keputusannya. Peer dengan satu julat untuk LAN pejabat dan satu untuk rangkaian makmal menghantar destinasi itu tepat melalui terowong dan membiarkan yang lain. Satu hos memerlukan /32, dan julat yang bertindih di dua tapak memerlukan awalan hos sehingga seseorang menomborkan semula subnet.
Memilih untuk tidak menghantar apa-apa melalui terowong membawa keputusan yang sama ke hadnya: senarai minimum mengekalkan pautan naik sementara trafik biasa mengikut laluan biasanya. Tulis niat itu, kerana jika tidak pembaca seterusnya akan menganggap senarai pendek itu satu kealpaan dan memanjangkannya dengan baik hati.
Satu pemilik untuk jadual laluan
wg-quick dan NetworkManager kedua-duanya percaya mereka memiliki laluan antara muka. Import konfigurasi yang ditulis untuk wg-quick dan kemudian mulakan juga perkhidmatan wg-quick, dan anda mendapat entri berganda atau bercanggah yang tingkah lakunya bergantung pada yang mana berjalan terakhir. Pilih satu pemilik dan buang yang lain: jika NetworkManager mengurus sambungan, nyahdayakan unit wg-quick untuk antara muka itu, dan jangan sekali-kali menambah profil kedua untuk peranti yang sama.
Apabila pembahagian mesti mengikut penyesuai fizikal dan bukan destinasi, anda telah beralih kepada penghalaan dasar, dan penghalaan dasar juga memerlukan seorang pengarang. Sahkan dengan mengulang ip route get, kemudian mencapai hos di dalam awalan jauh dengan sesuatu yang mencetak alamat sumber yang dipilihnya. Semak IPv6 dan DNS secara berasingan jika profil itu membawa salah satunya.