Mengetik endpoint VPN ke daftar server Minecraft terasa logis dan selalu gagal, karena alamat itu mengakhiri terowongan, bukan meng-host game. Pemain yang tergabung ke VPN yang sama sudah punya jalur ke host game, jadi entri harus menyebut host dan port tempat game mendengarkan. Benahi keduanya dan sisa masalahnya adalah keterjangkauan layanan biasa, daftar periksa yang jauh lebih pendek daripada yang terlihat awalnya.

Dua alamat, dua tugas

Satu alamat adalah infrastruktur publik: endpoint transport yang membawa paket terenkripsi antar peer. Yang lain adalah alamat privat milik mesin yang menjalankan server khusus. Keduanya tidak dapat dipertukarkan, dan mengganti satu dengan yang lain menghasilkan koneksi ditolak atau waktu habis yang tampak seperti masalah firewall.

RoleAddressWhere it belongs
Public transport endpoint203.0.113.40VPN client configuration, never the game
Game host on the VPN10.60.0.20Server address field, with the port
Player peer10.60.0.30Assigned by the tunnel, nothing to type

Dengan port default, pemain mengetik 10.60.0.20:25565 dan tidak ada lagi. Halaman unduhan server Java Mojang menyebut 25565 sebagai default, dan operator server yang mengubah port harus dipercaya alih-alih diragukan berdasarkan tutorial lama.

Jadikan alamat itu layanan sungguhan

Alamat yang dapat dijangkau itu perlu dan tidak cukup. Server khusus harus berjalan, harus kompatibel dengan versi yang dijalankan klien pemain, dan harus mendengarkan di alamat yang dapat dijangkau terowongan. Proses yang hanya terikat ke loopback tidak menjadi terjangkau karena seseorang menambahkan alamat lain ke mesin itu.

Pastikan listener sebelum menyentuh firewall:

ss -lntp | grep 25565
nc -vz 10.60.0.20 25565

Baris pertama menunjukkan apa yang sebenarnya diikat proses, dan baris kedua menunjukkan apakah peer dapat menyelesaikan jabat tangan TCP. Ketika ikatan adalah 127.0.0.1, tidak ada jumlah konfigurasi VPN yang mengubah hasilnya, dan satu detail itu menjelaskan jumlah laporan «VPN rusak» yang mengejutkan.

Kebijakan peer, firewall, dan jalur balasan

Dua pertanyaan izin berada di atas listener. Konfigurasi peer VPN harus mengizinkan lalu lintas antara kedua peer, dan firewall host game harus menerima port game dari peer itu. Jaga keduanya terbatas pada layanan game dan peer yang berwenang alih-alih menonaktifkan firewall host, yang menukar aturan dua baris dengan masalah yang jauh lebih besar. Aturan sempit juga satu-satunya versi ini yang lolos tinjauan keamanan tanpa satu paragraf pembenaran.

Lalu ingat apa yang dibuktikan ping yang berhasil. Mencapai gateway VPN, atau mendapat balasan dari host game, hanya menunjukkan bahwa ICMP melewati jalur. Koneksi game membutuhkan port tertentu terbuka di kedua arah, dan jalur balasan sama pentingnya dengan jalur keluar.

Ketika server berada di balik gateway

Contoh di atas menempatkan server game sebagai peer, yang menjaga rencana alamat tetap sederhana. Jika server justru berada di LAN di balik gateway VPN, pemain membutuhkan alamat privat server yang dapat dirutekan, gateway harus memiliki penerusan yang dikonfigurasi untuk LAN itu, dan host di LAN membutuhkan rute kembali ke klien yang diterowangkan. Lewatkan jalur balasan dan jabat tangan mati di tengah jalan, yang merupakan kegagalan paling membingungkan dari ketiganya.

Jangan menyalin alamat peer contoh ke mesin lain untuk meniru topologi ini. Alamat dalam contoh menggambarkan peran, dan menggunakan ulang satu alamat pada dua peran menciptakan tumpang tindih yang tidak dapat diselesaikan perutean.

Penemuan, akun, dan apa yang jangan diubah

Penemuan LAN otomatis adalah kenyamanan yang dibangun di atas pengumuman. VPN yang dirutekan tidak perlu membawa siaran itu, jadi entri yang hilang di daftar LAN tidak mengatakan apa pun tentang apakah alamat privat eksplisit berfungsi. Ketik alamatnya, lalu nilai. Jika terhubung, celah penemuan adalah gangguan kegunaan, bukan kesalahan, dan itu dapat didokumentasikan seperti itu alih-alih diselidiki.

Pertahankan juga autentikasi akun normal game dan kebijakan penerimaan tetap utuh. Rute privat yang berfungsi memberi jalur, bukan keanggotaan, dan tidak ada penataan ulang prioritas adaptor yang menggantikan identifikasi tujuan yang seharusnya digunakan klien.

Artikel terkait