Terowongan berfungsi di jaringan kantor dan macet di rumah, dan log menunjukkan pertukaran pertama selesai sebelum hal lain terjadi. Pola itu menunjuk ke pertukaran autentikasi, bukan kredensial: rantai sertifikat membuat pesan itu jauh lebih besar daripada pesan sebelumnya, dan jalur yang tidak menyukai datagram besar akan menjatuhkannya diam-diam. Ada dua mekanisme fragmentasi berbeda yang terlibat, dan mengetahui yang mana yang Anda lihat menentukan perbaikannya.

Dua mekanisme fragmentasi, satu gejala

IKEv2 memiliki ekstensi fragmentasi sendiri, yang didefinisikan dalam RFC 7383, yang memecah pesan IKE terlindungi menjadi pesan IKE yang lebih kecil. Kedua pihak menegosiasikan kemampuan itu, dan pesan dirakit ulang oleh implementasi IKE, bukan oleh lapisan IP.

Fragmentasi IP biasa adalah mekanisme berbeda dengan mode kegagalan berbeda. Router di antara kedua pihak memfragmentasi datagram besar, atau menjatuhkannya dan mengembalikan pesan ICMP yang mungkin tidak pernah sampai ke pengirim. Beberapa jaringan membuang fragmen secara diam-diam, dan beberapa perangkat tengah menangani fragmen pertama tetapi tidak sisanya. Dari sudut pandang aplikasi, ketiga kasus tampak sama.

Penelusuran NAT menambahkan variabel ketiga, karena ESP kemudian dibungkus dalam UDP dan paket luar menjadi lebih besar sementara tampak seperti lalu lintas UDP biasa pada port 4500. Jalur yang meloloskan UDP dengan baik tetap bisa gagal pada datagram yang tidak lagi muat.

Baca pertukaran yang gagal

Cari transisinya, bukan kesalahannya. Log yang menunjukkan pertukaran awal terkirim dan terjawab, lalu tidak ada apa-apa, memberi tahu Anda bahwa pesan berikutnya tidak pernah selesai. Naikkan tingkat log sementara dan bandingkan ukuran yang dilaporkan pada kedua pihak.

Yang ingin Anda pastikan adalah apakah penjawab sama sekali melihat permintaan itu. Jika penginisiasi mengirim sesuatu dan penjawab tidak memiliki catatan apa pun tentangnya, masalahnya ada pada pengiriman. Jika penjawab mengurai permintaan dan menolaknya, sertifikatnya sendiri yang bermasalah, dan fragmentasi adalah pengalih perhatian. Perbedaan itu bernilai lebih dari satu halaman pesan batas waktu.

Ubah jalurnya, bukan sertifikatnya

Uji klien yang sama, sertifikat yang sama, dan konfigurasi yang sama dari jaringan lain. Hotspot seluler biasanya merupakan jalur kedua termurah, dan itu benar-benar berbeda dari tautan kantor, bukan hanya secara nama.

Jika jabat tangan selesai di jalur kedua, rantai sertifikat baik-baik saja dan jalur pertama adalah variabelnya. Jika gagal secara identik di keduanya, berhenti menguji jaringan dan lihat pesannya sendiri. Perbandingan tunggal itu menghilangkan sekitar separuh penjelasan yang mungkin.

Ukur pertukaran sebelum Anda mengubah apa pun

Dapatkan ukuran rantai dan ukuran jalur. Kedua angka membatasi apa yang dapat dikirim jabat tangan, dan keduanya murah diukur:

openssl crl2pkcs7 -nocrl -certfile chain.pem | openssl pkcs7 -print_certs -noout | grep -c subject
ls -l chain.pem
ping -M do -s 1400 198.51.100.7
ip -s link show eth0 | sed -n '1,6p'

Dua yang pertama memberikan jumlah sertifikat dan ukuran file, yang merupakan indikator wajar seberapa besar pesan autentikasi nanti. Uji ping melaporkan apakah datagram seukuran itu bertahan di jalur, dan penghitung antarmuka menunjukkan apakah fragmen dibuang di ujung Anda. Di Windows, uji yang setara adalah ping dengan bendera do-not-fragment dan ukuran muatan eksplisit.

Ulangi uji ke bawah sampai berhasil. Ukuran terbesar yang lolos adalah anggaran kerja untuk jalur itu, dan itu lebih berguna daripada nilai bawaan mana pun yang diterbitkan.

Perbaiki lapisan yang benar-benar rusak

Jika jalur menjatuhkan datagram besar, aktifkan fragmentasi IKE pada kedua pihak dan pastikan ekstensinya dinegosiasikan, bukan sekadar ditawarkan. Jika jalur menangani fragmen dengan buruk di tingkat IP, perbaikannya ada di sana atau di MTU antarmuka luar, bukan di penyimpanan sertifikat.

Jika rantainya terlalu panjang, potong ke sertifikat perantara yang benar-benar dibutuhkan pihak lain. Menghapus akar yang sudah dipercaya klien adalah perawatan yang wajar; menghapus perantara bukan, dan menonaktifkan verifikasi untuk memperkecil pesan menukar masalah pengiriman dengan masalah keamanan.

Catat mekanisme mana yang Anda ubah dan bagaimana jabat tangan tampak sesudahnya. Kejadian berikutnya biasanya di jaringan lain dengan gejala yang sama, dan catatan itulah yang mengubah dua jam menjadi sepuluh menit.

Artikel terkait