"Pakai CDN biar nggak lag" dan "pakai proxy biar ping turun" adalah dua saran yang sering muncul di grup developer FiveM. Keduanya setengah benar. CDN dan IP proxy memang sama-sama berada di antara pemain dan server, tapi membawa jenis trafik yang berbeda dan menyelesaikan masalah yang berbeda.
Artikel ini menjelaskan perbedaannya dari sisi trafik, kapan masing-masing berguna, kapan tidak berguna sama sekali, dan bagaimana arsitektur server yang memakai keduanya.
Dua jenis trafik di server FiveM
Untuk memahami bedanya, pisahkan dulu trafik server FiveM menjadi dua:
- Download resource. Saat pemain join, client mengunduh semua file resource yang belum ada di cache-nya: script, MLO, kendaraan, pakaian, peta. FXServer melayani file ini lewat HTTP di endpoint
/files/pada port 30120 (TCP). Ukurannya bisa ratusan MB sampai beberapa GB untuk server roleplay dengan banyak aset custom. - Trafik gameplay. Setelah masuk, client dan server bertukar paket kecil terus-menerus: posisi pemain, event, sinkronisasi entity, state bags. Sebagian besar berjalan di UDP 30120. Ukurannya kecil, tapi sangat sensitif terhadap latency, jitter, dan packet loss.
CDN menangani jenis pertama. IP proxy menangani jenis kedua. Hampir semua kebingungan soal "CDN atau proxy" selesai begitu dua jenis trafik ini dipisahkan.
Apa yang dilakukan CDN FiveM
FXServer punya fitur fileserver_add yang mengarahkan download resource ke server lain. Dengan satu baris di server.cfg:
fileserver_add ".*" "http://CDN_IP/files"client tidak lagi mengunduh file dari FXServer, melainkan dari node CDN. Node CDN mengambil setiap file dari FXServer sekali (cache MISS), menyimpannya, lalu melayani pemain berikutnya langsung dari cache (cache HIT). Penjelasan lengkapnya ada di apa itu FiveM CDN dan langkah setupnya di cara pasang CDN FiveM dengan fileserver_add.
Yang bisa diperbaiki CDN:
- Pemain lama di layar download resource, terutama saat banyak yang join bersamaan.
- Uplink FXServer penuh saat restart atau jam ramai karena dipakai untuk download.
- Kuota transfer server game cepat habis karena download aset berulang.
- Server di luar Indonesia (misalnya Eropa) dengan pemain di Indonesia: download dari node yang dekat dengan pemain lebih cepat.
Yang tidak diperbaiki CDN: FPS rendah, server hitch, rubber banding, ping tinggi saat bermain, atau packet loss. Setelah download selesai, CDN tidak terlibat lagi dalam gameplay.
Apa yang dilakukan IP proxy
IP proxy meneruskan koneksi TCP dan UDP dari IP proxy ke IP servermu. Pemain connect ke PROXY_IP:30120, proxy meneruskan semua trafik (termasuk gameplay) ke origin. Di server.cfg, dua baris ini membuat server list menampilkan IP proxy:
set sv_forceIndirectListing true
set sv_listingIpOverride "PROXY_IP"Yang bisa diberikan IP proxy:
- IP origin tersembunyi. Pemain dan server list hanya melihat IP proxy. Lihat cara menyembunyikan IP asli server FiveM untuk setup firewall dan daftar kebocoran.
- Titik masuk yang bisa dipindah. Ganti server origin tanpa mengganti alamat yang sudah dihafal pemain.
- Rute alternatif. Kalau jalur pemain ke proxy lalu proxy ke origin lebih baik daripada jalur langsung, koneksi bisa lebih stabil.
Yang perlu diperhatikan:
- Proxy menambah satu hop. Ping tidak otomatis turun; bisa sama, turun, atau naik tergantung rute. Ukur dulu, jangan berasumsi. Kalau masalahmu adalah packet loss, baca cara mengatasi packet loss FiveM untuk memastikan sumbernya.
- Server melihat IP proxy, bukan IP pemain. Ban dan log harus memakai identifier akun (license, Discord), bukan IP.
- Proxy tidak sama dengan anti-DDoS. Proxy menyembunyikan origin, tapi tidak menyerap serangan volumetrik dengan sendirinya.
Perbandingan CDN vs IP proxy
| Aspek | Game CDN | IP Proxy |
|---|---|---|
| Trafik yang dibawa | Download resource (HTTP /files/) | Semua trafik game, TCP dan UDP |
| Masalah yang diselesaikan | Download lambat, uplink dan kuota origin habis | IP origin terekspos, titik masuk tetap, rute alternatif |
| Pengaruh ke gameplay | Tidak ada setelah download selesai | Langsung: semua paket gameplay lewat proxy |
| Pengaruh ke ping | Tidak ada | Bisa naik atau turun tergantung rute |
| IP origin | Tetap terlihat (pemain connect langsung ke origin) | Tersembunyi di balik IP proxy |
| IP pemain di server | Tetap IP asli pemain | Terlihat sebagai IP proxy |
| Beban bandwidth origin | Turun, download dilayani cache | Sama, trafik tetap sampai ke origin |
| Setup di server.cfg | Satu baris fileserver_add | Dua baris listing override |
| Game | FiveM, RedM | FiveM, RedM, SA-MP, game TCP/UDP lain |
Mana yang kamu butuhkan?
Mulai dari gejalanya, bukan dari produknya.
- Pemain mengeluh lama download saat join, atau grafik bandwidth server melonjak tiap restart → CDN. Cek dulu ukuran resource kamu di cara mempercepat download resource FiveM; kadang masalahnya aset yang terlalu besar, bukan jaringannya.
- IP server sering disasar, atau kamu tidak mau IP origin dipublikasikan → proxy, ditambah firewall origin yang benar.
- Ping tinggi atau tidak stabil hanya dari ISP tertentu → ukur dulu dengan MTR dari ISP tersebut (panduannya di sini). Proxy hanya membantu kalau rute lewat proxy terbukti lebih baik. Penjelasan soal routing ISP ada di kenapa ping FiveM tinggi dari IndiHome.
- FPS drop, server hitch, resmon tinggi → bukan CDN dan bukan proxy. Itu masalah script atau hardware. Baca cara optimasi server FiveM dan cara mengatasi server hitch warning.
- Server ramai dengan banyak aset custom dan ingin IP origin tersembunyi → keduanya.
Contoh arsitektur memakai keduanya
Banyak server memakai CDN dan proxy bersamaan karena tugasnya saling melengkapi:
┌──────────────────────────┐
Pemain ──────► │ IP Proxy (Jakarta) │ ──── TCP/UDP 30120 ───► FXServer (origin)
(connect) │ PROXY_IP:30120 │ IP tersembunyi
└──────────────────────────┘ ▲
│ MISS: ambil file
┌──────────────────────────┐ │ sekali per versi
Pemain ──────► │ Game CDN (Jakarta) │ ───────── HTTP /files/ ────────┘
(download) │ http://CDN_IP/files │
└──────────────────────────┘Konfigurasi server.cfg-nya:
# IP proxy diumumkan ke server list
set sv_forceIndirectListing true
set sv_listingIpOverride "PROXY_IP"
# download resource dari CDN
fileserver_add ".*" "http://CDN_IP/files"Dan firewall origin menerima port 30120 hanya dari dua sumber:
sudo ufw allow from PROXY_IP to any port 30120 proto tcp
sudo ufw allow from PROXY_IP to any port 30120 proto udp
sudo ufw allow from CDN_IP to any port 30120 proto tcpNode CDN mengambil file dari origin lewat TCP 30120, jadi IP CDN harus ada di allowlist TCP. Kalau tidak, CDN tidak bisa mengisi cache dan download pemain gagal.
Catatan: IP node CDN terlihat oleh pemain karena mereka mengunduh langsung darinya. Itu tidak membuka IP origin, karena CDN mengambil file dari origin di sisi server, bukan dari sisi pemain.
Kesalahan umum
- Membeli proxy untuk mengatasi FPS drop. FPS ditentukan PC pemain dan script client, bukan jalur jaringan.
- Memasang CDN lalu berharap ping turun. CDN tidak menyentuh trafik gameplay.
- Memasang proxy tapi port origin tetap terbuka untuk publik. Origin masih bisa disasar langsung oleh siapa pun yang tahu IP lamanya.
- Tidak mengukur sebelum dan sesudah. Simpan hasil MTR, waktu join, dan grafik bandwidth sebelum perubahan, supaya kamu tahu apakah perubahan itu benar-benar membantu.
FAQ
Apakah CDN bisa menyembunyikan IP server?
Tidak. Dengan CDN saja, pemain tetap connect untuk gameplay langsung ke IP origin. Untuk menyembunyikan IP, kamu butuh proxy yang meneruskan trafik game.
Apakah download resource juga lewat proxy kalau saya hanya pakai proxy?
Ya. Tanpa fileserver_add, download diambil dari endpoint server yang dipakai pemain, yaitu lewat proxy, lalu diteruskan dari origin. Bandwidth origin tetap terpakai penuh, dan kuota transfer proxy juga ikut terpakai.
Apakah CDN dan proxy harus di lokasi yang sama?
Tidak wajib. Pilih lokasi yang paling dekat dengan mayoritas pemain. Untuk komunitas Indonesia, Jakarta atau Singapore biasanya masuk akal, tapi tetap ukur dari ISP yang banyak dipakai pemainmu.
Server saya kecil, 20 pemain. Perlu salah satunya?
Belum tentu. Kalau download tidak dikeluhkan dan IP tidak pernah jadi masalah, mungkin belum perlu. Tambahkan saat masalahnya muncul dan bisa diukur.
Penutup
CDN untuk download, proxy untuk jalur game dan menyembunyikan IP. Tidak ada yang memperbaiki FPS, dan tidak ada yang menjamin ping turun. Pilih berdasarkan gejala yang terukur, bukan berdasarkan istilah yang terdengar paling ampuh.
Sebagai keterbukaan: Noctis menjual keduanya. Game CDN adalah node cache di Jakarta atau Singapore yang dipasang dengan satu baris fileserver_add, dan IP Proxy meneruskan TCP dan UDP dari IPv4 khusus di Jakarta atau Singapore. Keduanya berjalan di Akamai Cloud (Linode), mulai Rp 250.000/bulan, dan tidak menyertakan anti-DDoS.