Profil yang berfungsi bulan lalu kini tamat masa, dan seseorang mencadangkan agar proto udp ditukar kepada proto tcp-client. Kadangkala itu langkah yang betul, kadangkala ia menghasilkan klien yang bersambung ke port yang tiada apa mendengar, kerana pelayan tidak pernah dikonfigurasikan untuk pengangkutan lain. Arahan ini menerangkan cara hujung anda bercakap; ia tidak boleh mencipta pendengar di hujung sana. Baca profil dan pelayan bersama-sama sebelum menukar mana-mana daripadanya.

Baca pengangkutan yang digunakan oleh sambungan yang dipilih

Profil boleh membawa beberapa entri remote, dan setiap satu boleh menamakan pengangkutannya sendiri. Klien memprosesnya mengikut urutan, jadi baris yang anda lihat dahulu tidak semestinya yang terpakai.

Cari entri yang benar-benar dicuba, kemudian baca pengangkutannya. Urutan penting, kerana klien tidak beralih diam-diam. Sesetengah binaan hanya mencuba entri seterusnya selepas tamat masa, jadi alternatif yang berfungsi di bawah fail dicapai beberapa saat kemudian daripada jangkaan anda. Perhatikan log untuk titik akhir yang dicuba dan bukannya menganggap baris pertama menang.

Jika fail mempunyai satu baris proto berhampiran atas dan beberapa entri remote di bawahnya, baris itu ialah lalai bagi mana-mana remote yang tidak mengatasinya. Suntingan setempat pada lalai tidak melakukan apa-apa untuk entri remote yang menamakan pengangkutannya sendiri.

grep -nE '^(remote|proto)\b' client.ovpn

UDP dan TCP bukan tetapan kelajuan

UDP menghantar datagram tanpa membina aliran tersusun, jadi trafik terowong itu sendiri tidak dibalut dalam pengangkutan boleh dipercayai kedua. TCP memberi anda laluan melalui rangkaian yang menggugurkan atau menyekat UDP, dengan kos penghantaran semula bersarang yang boleh membuat pautan yang mengalami kehilangan terasa lebih teruk.

Ini pertukaran kebolehcapaian, bukan kedudukan sejagat. Pilihan yang betul ialah yang dibenarkan oleh rangkaian di hadapan klien. Laluan yang menggugurkan UDP pada port VPN tidak akan pernah berunding, sebaik mana pun profil ditulis. Uji laluan itu, kemudian pilih pengangkutan.

Memilih antara keduanya hanya berdasarkan ukuran adalah satu kesilapan, kerana jawapannya bergantung pada apa yang dibenarkan oleh rangkaian di hadapan anda. Hotel atau proksi korporat mungkin membenarkan TCP keluar pada 443 dan tiada yang lain, sebab itulah penyedia menawarkan varian itu. Ia kekal sebagai sambungan OpenVPN pada port itu, bukan sesi HTTPS, walaupun nombor port itu yang biasa.

Apa sebenarnya maksud tcp-client

Arahan di pihak klien menamakan hujung yang memulakan sambungan TCP. Pihak pelayan menggunakan bentuk mendengarnya sendiri, dan menyalin perkataan klien ke dalam konfigurasi pelayan menghasilkan pendengar yang mengharapkan dipanggil, bukan yang menerima.

Padan bermakna kedua-dua hujung bersetuju tentang pengangkutan, bukan bahawa mereka berkongsi rentetan yang sama.

grep -nE '^proto\b' /etc/openvpn/server/server.conf
ss -lntp | grep openvpn

Tanya pelayan apa yang ia dengari sebelum anda menganggap profil itu salah. Pendengar UDP tidak muncul dalam senarai soket TCP, dan sebaliknya juga benar, jadi lihat paparan khusus protokol dan bukannya yang umum.

Apabila profil diimport tetapi tidak pernah bersambung

Profil diimport yang tamat masa serta-merta biasanya gagal sebelum sebarang pengesahan. Paket pergi ke port tanpa pendengar, atau rangkaian menggugurkannya diam-diam.

Uji laluan dengan cara paling mudah: sambung ke hos dan port yang sama dengan pengangkutan yang didakwa profil, dari rangkaian yang sama dengan klien yang gagal.

Jika ujian UDP tidak mendapat apa-apa dan ujian TCP bersambung, pelayan menawarkan pengangkutan lain dan profil itu hanya lapuk. Jika kedua-duanya tidak bertindak balas, masalahnya berada di hulu pilihan pengangkutan dan tiada suntingan profil akan membaikinya. Membezakan kedua-dua kes ini mengambil masa seminit dan menjimatkan sejam nyahpepijat sijil yang tidak pernah berkaitan.

Catat pengangkutan yang berfungsi

Sebaik sahaja gabungan berfungsi, catatkannya bersama pelayan, port dan protokol, dan tandakan dari rangkaian mana ia diuji.

Jika tidak, orang seterusnya yang menemui tamat masa akan mengulangi eksperimen yang sama ke arah bertentangan, dan mungkin menukar pelayan yang sebenarnya elok.

Jika penyedia menerbitkan kedua-dua varian, simpan kedua-dua fail dan labelkannya mengikut rangkaian yang sesuai. Dua profil dengan nama yang jelas menghalang percampuran tidak sengaja pengangkutan klien dengan pendengar pelayan yang tidak pernah dikonfigurasikan untuknya.

Artikel berkaitan