TCP 443 adalah cadangan dengan prasyarat, bukan penyamaran yang menyelipkan terowongan melewati filter mana pun. Ia membantu ketika operator sudah menerbitkan pendengar TCP di port itu dan jalur menoleransi koneksi yang tetap terbuka berjam-jam. Ia gagal, biasanya sebagai batas waktu, ketika salah satu dari keduanya tidak ada, dan batas waktu jarang mengatakan yang mana. Memutuskan apakah akan berpindah memerlukan tiga pertanyaan, dan hanya satu di antaranya tentang nomor port.

Nomor port bukan janji transportasi

Port menamai titik akhir; TCP mengubahnya menjadi aliran bita yang berurutan; OpenVPN memutuskan apa yang berjalan di dalam aliran itu. Server web pada nomor yang sama memakai susunan aplikasi yang sama sekali berbeda, jadi berbagi port 443 membuat keduanya tampak mirip bagi filter dan tidak lebih. Nomornya adalah petunjuk yang dibaca filter, bukan sifat yang mengubah isi paket. Memperlakukan keduanya sebagai sama karena berbagi port adalah kesalahan di balik sebagian besar kebingungan di sini.

Perangkat perantara jarang mengambil keputusan izinkan-atau-tolak yang sederhana tentang sebuah port. Banyak memeriksa bita pertama, sebagian mengunci tujuan, dan sebagian mereset koneksi yang terbuka terlalu lama. Itulah sebabnya profil yang sama bisa bekerja dari satu jaringan dan kehabisan waktu dari jaringan lain, dan sebabnya cadangan layak diuji sebagai opsi yang didukung alih-alih dipercaya sebagai janji. Ketika filter memeriksa lalu lintas, nomor port hanyalah hal pertama yang dilihatnya.

Pastikan pendengarnya sebelum menyentuh profil

Server harus dikonfigurasi untuk TCP pada port itu, dan profil klien harus meminta transportasi yang sama. Menulis ulang profil UDP agar meminta TCP tidak menciptakan pendengarnya, dan batas waktu yang dihasilkan tidak bisa dibedakan dari firewall yang menjatuhkan port. Unduh profil TCP milik operator bila ada, karena sebagian layanan menerbitkan titik akhir dan pengaturan identitas terpisah untuk tiap transportasi. Mengedit dengan tangan baik untuk uji terkendali dan cara buruk menebak konfigurasi yang dimaksudkan penyedia.

Kedua sisi kecocokan itu tampak di konfigurasi, dan opsi tautan proyek OpenVPN mendokumentasikan kedua bentuk. Pasangan minimalnya seperti ini:

# server: accept TCP on this port
proto tcp-server
port 443
# client: request the same transport
proto tcp
remote vpn.example.com 443

Tiga syarat menentukan apakah cadangan itu sepadan

Syarat pertama adalah operator menawarkan transportasi itu sama sekali; tanpanya, hal lain tidak penting. Kedua adalah jalur mempertahankan sesi berumur panjang, karena sebagian jaringan mereset koneksi yang tetap terbuka alih-alih memblokir port sepenuhnya. Ketiga adalah apakah cadangan itu pengecualian yang disengaja atau akal-akalan yang menyembunyikan kerusakan yang belum Anda perbaiki.

Setiap syarat punya pemeriksaan murah. Kegagalan pada salah satunya terlihat sama dari sisi klien:

ConditionHow to check itWhat a failure decides
The server offers TCPThe operator's profile list, or a listening-socket check on the serverNo client-side edit can help
The path keeps long sessionsA test connection left open for an hourReconnects will look like server faults
The fallback is deliberateA change record naming the UDP faultThe underlying fault stays invisible

Sebelum membandingkan transportasi, selesaikan semua masuk di portal tawanan. Jaringan yang belum menerima perangkat Anda memblokir kedua transportasi, dan perbandingan lalu mengukur portalnya, bukan terowongannya. Masuklah, pastikan penjelajahan biasa bekerja, dan baru setelah itu mulai ujinya.

Biaya yang Anda terima: TCP di dalam TCP

TCP mengirim ulang segmen yang hilang dan menjaga urutannya. Ketika aplikasi yang juga memakai TCP berjalan di dalam terowongan TCP, dua lapisan pemulihan bereaksi pada kehilangan yang sama, dan interaksi itulah yang membuat terowongan terasa lambat di jalur yang kehilangan paket. Gejalanya adalah tunda dan getaran, bukan kegagalan bersih, yang memudahkan menyalahkan ujung jauh. Ukurlah dari klien pada kedua transportasi sebelum menarik kesimpulan.

UDP menghindari penyarangan itu, dan itulah alasan utama operator lebih menyukainya dan hanya menawarkan TCP sebagai alternatif. Koneksi TCP yang stabil tetap lebih berguna daripada koneksi UDP yang tak terjangkau, jadi perbandingannya antara dua biaya nyata, bukan antara opsi baik dan buruk. Jaga perangkat dan jaringan akses tetap sama selama membandingkan, atau hasilnya akan menjelaskan variabel yang salah.

Sebagian fitur klien didokumentasikan hanya untuk satu transportasi, jadi profil cadangan bisa diam-diam menghilangkan perilaku yang Anda andalkan. Bacalah syarat transportasi opsi itu sebelum memperlakukan profil TCP sebagai penukaran langsung.

Kerusakan yang tidak disentuh transportasi lain

Sertifikat yang kedaluwarsa masih perlu pemeriksaan jam atau pembaruan, dan akun yang ditolak masih perlu kredensial yang benar. Pertahankan pemeriksaan identitas server yang diberikan operator, karena nomor port yang familier tidak mengautentikasi siapa pun. Port yang menjawab hanya mengatakan bahwa ada sesuatu yang mendengarkan.

Jika terowongan naik dan tujuan tetap gagal, masalah yang tersisa adalah perutean atau penyelesaian nama setelah koneksi, bukan transportasi. Ikuti jalur itu alih-alih berputar di antara port, karena begitulah satu sore hilang. Profil memberi tahu transportasi mana yang dicoba; ia tidak pernah memberi tahu mengapa jalur UDP gagal.

Artikel terkait