Pada iPhone yang diawasi dengan profil Always On terurus, telefon memegang terowong untuk setiap antara muka IP aktif, jadi selular dan Wi-Fi masing-masing mendapat terowong sendiri. Pelayan kemudian menyenaraikan dua persatuan keselamatan IKE untuk satu peranti, selalunya berkongsi satu alamat maya, dan dorongan pertama ialah menyebutnya gelung rekey dan mula menukar pemasa. Dorongan itu biasanya salah. Ikut langkah di bawah mengikut susunan bukti muncul pada pelayan, dan biarkan tetapan telefon sehingga pelayan memberitahu anda kes mana yang anda hadapi.

Mulakan dengan dua baris yang pelayan sudah ada

Senaraikan persatuan dengan swanctl --list-sas dan baca empat medan dalam kedua-dua entri: alamat jauh, identiti yang disahkan, IP maya yang diberikan dan masa penciptaan. Dua alamat luar berbeza dengan satu identiti dan satu IP maya ialah bentuk yang memulakan soalan ini, dan wajar dicatat sebelum sebarang perubahan. Kemudian periksa persatuan anak yang dilampirkan pada setiap satu, kerana pemilih trafik menentukan sama ada carian destinasi boleh membezakan kedua-dua terowong. Pasangan yang muncul dan hilang dalam beberapa saat ialah haiwan yang berbeza daripada pasangan yang kedua-duanya hidup berjam-jam.

Susun senarai mengikut masa penciptaan sebelum membuat kesimpulan. Kededekatan dalam output tidak bermakna apa-apa, dan penyenaraian berjadual menjemput tepat kesilapan itu.

Tentukan pertindihan mana yang anda lihat

Rekey IKEv2 dan pengesahan semula make-before-break sengaja mencipta pertindihan singkat, dengan menubuhkan persatuan baharu sebelum memadam yang lama. Cap masa menyelesaikan kes itu, kerana SA lama yang hilang satu atau dua saat selepas yang baharu muncul ialah pembaharuan yang menjalankan tugasnya. Terowong antara muka bebas tidak pernah kelihatan begitu, kerana setiap satu kekal selagi antara mukanya aktif, dan memadam satu tidak berpunca daripada mencipta yang lain.

Tingkah laku Always On terurus Apple adalah setiap antara muka, sebab itu peranti yang diawasi boleh kelihatan sah lebih sibuk daripada profil yang dikonfigurasikan secara manual. Suis sambung automatik aplikasi penyedia tidak membayangkan perkara yang sama, dan peraturan on-demand biasa juga tidak. Gambaran keseluruhan penggunaan Apple menerangkan model setiap antara muka; bandingkan dua baris anda dengannya sebelum menganggap gelung. Kedua-dua bentuk juga mengambil daripada kolam pelayan yang sama, jadi pertindihan ialah satu-satunya isyarat awal anda.

Lihat mengapa satu alamat maya untuk dua terowong memecahkan balasan

Balasan kepada telefon dialamatkan ke alamat dalaman, dan kernel memilih terowong keluar mengikut destinasi dan dasar, bukan mengikut antara muka yang digunakan telefon. Dua persatuan serentak yang memegang IP maya yang sama dengan dasar yang bertindih membiarkan keputusan penghalaan tanpa cara untuk menyatakan balasan milik sesi mana. Sesetengah balasan mengambil terowong yang salah, dan telefon menunjukkan sambungan yang berfungsi satu arah atau mati apabila Wi-Fi naik. Dua output arahan membuktikan keadaan: swanctl --list-sas menunjukkan IP maya yang sama pada kedua-dua SA, dan ip xfrm policy menunjukkan dua pemilih yang serupa.

Pasangan output itulah yang anda tampal dalam rekod perubahan. Tiada satu pun cukup meyakinkan sendiri, kerana setiap satu boleh kelihatan munasabah secara berasingan.

Ini pengalamatan dan dasar di sebelah pelayan, bukan tingkah laku telefon yang salah, dan tiada tetapan klien memisahkan dua alamat dalaman yang serupa. Kolam memberikan nilai yang sama dua kali dan pemasang dasar menerimanya. Baca hasilnya dari sebelah pelayan sebelum menyalahkan klien.

Tukar kolam atau model keselarian, bukan pemasa rekey

Dalam konfigurasi swanctl, keunikan ialah dasar eksplisit pada sambungan: unique = replace membuang sambungan lebih lama apabila yang baharu ditubuhkan, dan unique = keep menolak pendatang baharu. Kedua-dua nilai bertindak apabila sambungan disediakan, bukan pada SA anak di dalamnya.

connections {
  ios-alwayson {
    unique = replace
  }
}

Tiada nilai yang neutral bagi klien setiap antara muka. keep memulihkan skrin status yang kemas dengan menolak terowong kedua dan memecahkan reka bentuk terurus, manakala replace meruntuhkan terowong lebih lama dan merupakan kompromi yang sama ke arah lain. Jika kedua-dua terowong benar-benar diperlukan, backend kolam mesti mengeluarkan pajakan berbeza untuk satu identiti, dan kunci pajakannya mesti membezakan permintaan. Jadual identiti-ke-alamat statik akan dengan senang hati memulangkan alamat yang sama dua kali dan menghasilkan semula masalah asal dengan lebih banyak konfigurasi. Periksa bagaimana backend mengunci pajakan sebelum menambah pemetaan statik kedua.

Uji peralihan yang benar-benar anda gunakan

Keluar dari julat Wi-Fi dengan sesi aktif, kemudian masuk semula, dan periksa bahawa balasan tiba di kedua-dua arah. Lakukan dua kali, kerana peralihan kedua ialah tempat dasar lapuk biasanya muncul. Uji dengan perkhidmatan yang menjawab pada sambungan yang anda buka, dan ulangi keluar semasa terowong membawa trafik dan bukannya berdiam diri. Telefon yang boleh menghantar tetapi tidak menerima kelihatan sihat dalam log handshake dan rosak dalam pelayar.

Skrin status yang dikurangkan kepada satu baris bukan bukti reka bentuk yang berfungsi, hanya bukti bahawa satu terowong telah hilang. Kedua-dua arah mesti berfungsi sebelum peralihan lulus. Catat apa yang anda perhatikan, bersama dua output pemeriksaan pertindihan, supaya jurutera seterusnya boleh membandingkan dan bukannya mengulangi perjalanan itu.

Artikel berkaitan