OpenVPN Connect menolak fragment: perbaiki sumber profilnya
OpenVPN Connect tidak mendukung fragment, jadi profil yang bisa diurai tetap bisa gagal. Dapatkan profil yang dibuat untuk klien itu, atau ubah sisi server dengan sengaja.
Kesalahan muncul saat impor, sebelum negosiasi apa pun, dan menyebut direktif yang menolak diterima oleh klien. OpenVPN Connect menjalankan kode pustaka OpenVPN 3, yang sama sekali tidak menerapkan opsi fragment milik klien komunitas. Itu menjadikannya pertanyaan kompatibilitas antara dua ujung, bukan pertanyaan penyetelan ukuran paket.
Menghapus baris itu menghasilkan berkas yang akan diurai klien, dan server yang mungkin masih mengharapkan format yang dijelaskan baris tersebut. Telusuri dari layar impor ke luar sebelum mengubah apa pun.
Di mana impor berhenti
Pengimpor mengurai direktif sebelum menghubungi server, jadi penolakan di sana adalah keputusan lokal soal sintaksis dan bukan hasil jaringan, dan daftar direktif yang tidak didukung OpenVPN mencatat batasan yang sama. Itu menjelaskan bagaimana satu berkas bisa bekerja di klien komunitas dan gagal di Connect pada mesin yang sama. Baca nama direktif pada pesan dan simpan berkas aslinya, karena teks itu satu-satunya bukti tentang apa yang ditolak klien. Kesalahan impor dan waktu tunggu koneksi berasal dari tahap yang berbeda dan pantas mendapat tanggapan yang berbeda.
Jika pesan menyebut fragment, pertanyaan yang tersisa adalah apakah server juga bergantung padanya. Jawab itu sebelum menyentuh profil yang Anda terima.
Apa yang diubah fragment di klien komunitas
Di klien komunitas, direktif itu mengaktifkan fragmentasi datagram milik OpenVPN sendiri, yang memecah muatan sebelum mencapai lapisan IP luar. Fitur ini ada untuk bertahan pada jalur yang membuang datagram UDP besar dan menjaga tunel tetap terpakai di tempat penemuan MTU jalur tidak bisa dipercaya. Ini bukan sinonim menurunkan MTU antarmuka, dan bukan fragmentasi tingkat IP yang dilakukan sistem operasi. Klien tanpa mekanisme itu tidak bisa memperolehnya dengan menurunkan sebuah angka.
Karena pengaturan itu juga berada di konfigurasi server, menghapusnya dari salinan Anda hanya mengubah sisi Anda. Server mungkin masih mengharapkan rekan yang memahami opsi tersebut, dan profil yang bisa diurai belum menjadi sesi yang terbentuk. Kedua fakta itu menjelaskan keadaan antara yang membingungkan, ketika berkas yang telah diedit terhubung lalu macet.
Mintalah profil yang dibuat untuk klien ini
Jalur bersihnya adalah profil kedua yang didokumentasikan untuk OpenVPN Connect, jika layanan menerbitkannya. Banyak penyedia melakukannya, dan perbedaannya biasanya pada direktif yang mereka hilangkan, bukan pada ujung yang mereka tuju. Mintalah dengan nama klien alih-alih menjelaskan kesalahannya, karena meja dukungan dapat mencocokkan profil dengan klien jauh lebih cepat daripada mendiagnosis berkas yang sudah dikupas.
Jika Anda menjalankan server, keputusannya lebih luas daripada klien Anda sendiri. Mematikan fragmentasi memengaruhi setiap rekan, termasuk yang membutuhkannya agar tetap terhubung melalui jalur buruk. Menerbitkan pendengar kedua atau konfigurasi kedua untuk klien yang terdampak menjaga pengguna lama tetap berjalan sementara klien yang lebih baru mendapat sesuatu yang bisa diurainya. Apa pun pilihan Anda, catat konfigurasi mana melayani klien mana, karena pemetaan itu cepat hilang jika tidak.
Verifikasi koneksinya, bukan hanya impornya
Impor yang berhasil hanya membuktikan bahwa pengurai menerima berkas itu. Bentuk tunel dengan klien komunitas di mesin yang Anda kendalikan, memakai profil yang sama, lalu baca log untuk negosiasi transport dan cipher. Perintah di bawah melakukannya tanpa aplikasi desktop menghalangi.
openvpn --config client.ovpn --verb 3
ip -4 addr show tun0
curl -sS --interface tun0 -o /dev/null -w '%{http_code}\n' --max-time 8 https://example.com/
Log menunjukkan di mana upaya berhenti: kesalahan opsi muncul sebelum pertukaran TLS apa pun, sedangkan kegagalan autentikasi atau cipher muncul sesudahnya. Jika tunel naik dan permintaan tetap gagal, masalahnya berpindah dari kompatibilitas ke perutean. Bandingkan itu dengan perilaku Connect di jaringan yang sama sebelum menyimpulkan apa pun tentang server.
Simpan profil yang berfungsi dan versi klien di samping catatan. Rilis klien mendatang dapat menambahkan dukungan untuk sebuah direktif, dan itu mengubah jawabannya tanpa ada yang menyentuh server.