IPsec berbilang subnet hilang trafik balasan? Kira reqid
Trafik sehala melalui terowong berbilang subnet biasanya ketidakpadanan dasar dan reqid, bukan penyulitan atau penghalaan. Baca pangkalan data xfrm mengikut urutan.
Trafik meninggalkan satu tapak dan tidak pernah kembali, kedua-dua get laluan melaporkan rundingan selesai, dan satu-satunya petunjuk ialah longgokan paket keluar tanpa balasan. Pada titik akhir Linux, punca biasa bukanlah kekuatan penyulitan, MTU atau jadual penghalaan. Ia ialah kebutiran entri dasar dan nombor yang menghubungkan setiap dasar dengan persatuan keselamatan. Prosedur di bawah membaca kedua-dua pangkalan data itu sebelum menyentuh apa-apa lagi.
Pisahkan gejala sebelum mengubah apa-apa
Kegagalan sehala dengan rundingan IKE selesai menyempitkan masalah kepada laluan data. Sama ada dasar keluar padan dan balasan dibuang, atau balasan tidak pernah tiba kerana pihak jauh tiada cara menghantarnya. Dari aplikasi kedua-duanya kelihatan sama, dan pangkalan data xfrm membezakannya.
Jangan mula dengan MTU. MTU yang salah menghasilkan kesesakan dan gejala pemecahan, bukan pemisahan arah yang bersih dengan pembilang keluar yang meningkat.
Baca pangkalan data dasar dan pangkalan data keadaan
Di Linux penyulitan ditentukan oleh entri dasar, jadi dasar yang sepadan, bukan laluan, yang memasukkan paket ke dalam terowong. Jalankan ip xfrm policy untuk melihat pemilih, arah, keutamaan dan templat setiap entri, dan ip xfrm state untuk melihat persatuan yang terbentuk dengan reqid masing-masing. Dasar dan persatuan dihubungkan oleh reqid itu.
Lihat ketiga-tiga arah. Keluar dan masuk meliputi trafik ke dan dari hos ini; arah hadapan penting apabila hos menghala untuk pihak lain. Entri yang hilang atau tidak padan dalam satu arah menjelaskan hasil sehala tanpa sebarang kesalahan kriptografi.
Asimetri klasik: satu reqid untuk beberapa subnet
Kegagalan biasa datang daripada rakan yang memasang dasar untuk semua subnet yang dirundingkan di bawah satu reqid, yang berlaku dengan generate_policy require milik racoon. Trafik kemudian keluar melalui persatuan yang dibentuk terakhir, manakala pihak jauh menyimpan persatuan berasingan bagi setiap subnet. Balasan tiba pada persatuan yang reqid-nya tidak menunjuk dasar yang sepatutnya menerimanya, dan kernel membuangnya selepas penyahsulitan.
Pembetulan ialah perubahan konfigurasi, bukan peraturan tembok api: generate_policy unique; memberikan setiap dasar reqid sendiri, supaya persatuan mengikut dasar milik rakan mempunyai pasangan yang sepadan. Gunakannya, rundingkan semula, dan kira reqid berbeza untuk subnet yang dijangka sebelum mengisytiharkan kejayaan.
Jika dua subnet masih berkongsi satu reqid sedangkan pihak jauh menjangka dua, anda telah menemui asimetri itu. Catat pemetaan itu, kerana ia adalah bukti bahawa perubahan seterusnya membetulkannya atau mengekalkannya.
Pemilih datang daripada rundingan, bukan daripada konfigurasi anda
Julat yang dilindungi ialah apa yang dipersetujui kedua-dua hujung, bukan apa yang diminta oleh salah satu pihak. Klien yang menawarkan pasangan hos terhadap julat jauh yang luas menerima versi sempit get laluan itu, dan klien tidak boleh meluaskannya. Baca pemilih yang dipasang dan bukan yang ada dalam fail tempatan anda.
Apabila tujuannya sebaliknya, iaitu mengekalkan satu destinasi di luar terowong, tambahkan dasar pintasan dengan nombor keutamaan lebih rendah supaya ia mengalahkan entri yang dipasang secara automatik. Dasar tanpa templat membenarkan teks biasa, yang menjadikannya pengecualian yang disengajakan untuk rekod perubahan dan bukan langkah penyahpepijatan.
Sahkan mengikut urutan ini, dan ketahui cara membatalkannya
Senaraikan dasar bagi setiap subnet dalam kedua-dua arah, termasuk hadapan jika hos menghala. Kira reqid berbeza dan sahkan satu bagi setiap dasar di sisi yang menjangkakannya. Bandingkan pemilih yang dipasang dengan yang dirundingkan. Baca semula pembilang mengikut persatuan selepas pembaharuan kunci, kerana persatuan yang anda periksa mungkin sudah tiada. Periksa laluan terakhir, kerana laluan yang hilang ke subnet jauh menghasilkan gejala sehala yang serupa dengan pembilang dasar yang bersih.
Sebelum mengubah rakan, simpan keluaran semasa kedua-dua arahan xfrm. Jika tetapan baharu tidak memulihkan arah balasan, memulihkan keluaran itu ialah pembatalan yang lebih pantas daripada membina semula terowong dari ingatan, dan ia mengekalkan perbandingan yang jujur.