Cara Pakai Ngrok Untuk Server Lokal (PC/Laptop Sebagai Server)

CARA PAKAI Ngrok UNTUK SERVER LOKAL (PC/LAPTOP SEBAGAI SERVER)


๐ŸŒ Menjalankan Server Lokal dengan Ngrok untuk Catur Nine 9x9

Sekarang kita akan menghubungkan server lokal (PC/Laptop) dengan internet menggunakan Ngrok, sehingga pemain lain bisa terhubung secara online.

Tidak perlu hosting berbayar
Bisa diakses dari mana saja
Aman & mudah digunakan


๐Ÿ› ️ 1. Instalasi Ngrok

๐Ÿ“Œ Download dan install Ngrok
1️⃣ Kunjungi situs Ngrok:
๐Ÿ‘‰ https://ngrok.com/download
2️⃣ Ekstrak & pindahkan ke folder project catur_nine
3️⃣ Daftarkan akun & dapatkan token:
๐Ÿ‘‰ https://dashboard.ngrok.com/get-started/your-authtoken
4️⃣ Jalankan perintah berikut di terminal/cmd:

ngrok config add-authtoken YOUR_NGROK_AUTHTOKEN

๐Ÿš€ 2. Jalankan Server dengan Flask

Buat file server.py untuk meng-host game di lokal.
๐Ÿ“Œ Tambahkan file baru server.py

from flask import Flask, request, jsonify
import firebase_admin
from firebase_admin import credentials, db

app = Flask(__name__)

# ๐Ÿ”ฅ **Inisialisasi Firebase**
cred = credentials.Certificate("serviceAccountKey.json")
firebase_admin.initialize_app(cred, {
    "databaseURL": "https://catur-nine-default-rtdb.firebaseio.com/"
})

# **๐Ÿ”น Endpoint untuk mendapatkan status game**
@app.route("/game/status", methods=["GET"])
def get_status():
    game_data = db.reference("/game").get()
    return jsonify(game_data)

# **๐Ÿ”น Endpoint untuk mengirim langkah pemain**
@app.route("/game/move", methods=["POST"])
def post_move():
    data = request.json
    db.reference("/game/move").set(data)
    return jsonify({"status": "Move received", "move": data})

if __name__ == "__main__":
    app.run(host="0.0.0.0", port=5000)

Jalankan server lokal dengan:

python server.py

๐ŸŒ 3. Gunakan Ngrok untuk Menghubungkan Server ke Internet

๐Ÿ“Œ Jalankan perintah berikut di terminal/cmd:

ngrok http 5000

๐Ÿš€ Ngrok akan menghasilkan URL publik seperti ini:

Forwarding   https://random-subdomain.ngrok.io -> http://localhost:5000

๐Ÿ“Œ Gunakan URL Ngrok ini sebagai endpoint API di Firebase & game!


๐ŸŽฎ 4. Hubungkan Game dengan Server Ngrok

๐Ÿ“Œ Edit catur_nine_client.py untuk menghubungkan ke server

import requests

# **๐Ÿ”น Ganti dengan URL Ngrok yang kamu dapatkan**
SERVER_URL = "https://random-subdomain.ngrok.io"

# **๐Ÿ”น Mengirim langkah pemain ke server**
def send_move(move):
    response = requests.post(f"{SERVER_URL}/game/move", json=move)
    return response.json()

# **๐Ÿ”น Mengambil status game dari server**
def get_game_status():
    response = requests.get(f"{SERVER_URL}/game/status")
    return response.json()

# **๐Ÿ”น Contoh penggunaan**
if __name__ == "__main__":
    move = {"from": "e2", "to": "e4", "player": "white"}
    print(send_move(move))
    print(get_game_status())

Jalankan client dengan:

python catur_nine_client.py

๐Ÿ”ฅ 5. Mainkan Catur Nine Secara Online

1️⃣ Jalankan server di PC/Laptop

python server.py

2️⃣ Jalankan Ngrok untuk mendapatkan URL publik

ngrok http 5000

3️⃣ Bagikan URL Ngrok ke temanmu agar mereka bisa bermain online
4️⃣ Jalankan client untuk bermain

python catur_nine_client.py

๐ŸŽฏ Kesimpulan

Ngrok memungkinkan server lokal diakses dari internet
Pemain lain bisa terhubung tanpa hosting berbayar
Bisa digunakan di PC/Laptop sebagai server

๐Ÿ”ฅ Sekarang kita bisa main Catur Nine 9x9 dengan teman secara online! ๐Ÿš€♟️


Menjalankan Ngrok di HP Android Dengan Termux

Ngrok bisa dijalankan di HP Android, tetapi perlu beberapa langkah tambahan. Berikut caranya:


๐Ÿ”น 1. Install Termux & Ngrok di Android

1️⃣ Install Termux dari F-Droid (disarankan)
๐Ÿ‘‰ Download: https://f-droid.org/en/packages/com.termux/
Kenapa? Termux di Play Store sudah tidak diperbarui lagi.

2️⃣ Update & Install Paket Termux
Buka Termux, lalu jalankan perintah berikut untuk update paket:

pkg update && pkg upgrade
pkg install python
pkg install wget

3️⃣ Download & Install Ngrok di Termux

wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-arm.zip
unzip ngrok-stable-linux-arm.zip
mv ngrok /data/data/com.termux/files/usr/bin/
chmod +x /data/data/com.termux/files/usr/bin/ngrok

4️⃣ Tambahkan Token Ngrok
Daftar di https://dashboard.ngrok.com/get-started/your-authtoken
Lalu jalankan:

ngrok config add-authtoken YOUR_NGROK_AUTHTOKEN

Sebelum menjalankan perintah:

ngrok config add-authtoken YOUR_NGROK_AUTHTOKEN

Kamu harus login dulu ke Ngrok dan mendapatkan authtoken.


๐Ÿ”น 1. Daftar & Login ke Ngrok

1️⃣ Buka browser dan masuk ke:
๐Ÿ‘‰ https://dashboard.ngrok.com/signup
2️⃣ Daftar atau Login dengan akun Google/GitHub.
3️⃣ Dapatkan Authtoken:


๐Ÿ”น 2. Tambahkan Authtoken ke Termux

Sekarang buka Termux dan jalankan perintah berikut (ganti dengan tokenmu):

ngrok config add-authtoken 2O9F1m6Kp3zZzRANDOMTOKEN

Jika berhasil, akan muncul output seperti ini:

Authtoken saved to configuration file: /data/data/com.termux/files/home/.config/ngrok/ngrok.yml

๐Ÿ”น 3. Cek Apakah Ngrok Berjalan

Jalankan perintah:

ngrok http 5000

Jika sukses, kamu akan melihat URL seperti ini:

Forwarding   https://random-subdomain.ngrok.io -> http://localhost:5000

Sekarang game atau server kamu bisa diakses online dari HP atau PC lain! ๐Ÿš€๐ŸŽฎ


๐Ÿ”น 2. Jalankan Server di HP Android

Buka Termux, lalu jalankan server di Python:

python server.py

Sekarang jalankan Ngrok agar bisa diakses dari internet:

ngrok http 5000

๐Ÿ“Œ Ngrok akan memberikan URL seperti ini:

Forwarding   https://random-subdomain.ngrok.io -> http://localhost:5000

Gunakan URL Ngrok ini untuk menghubungkan game di HP lain atau PC!


๐Ÿ”น 3. Jalankan Client Catur Nine di HP atau PC

Edit catur_nine_client.py agar menggunakan URL Ngrok:

import requests

SERVER_URL = "https://random-subdomain.ngrok.io"  # Ganti dengan URL dari Ngrok

def send_move(move):
    response = requests.post(f"{SERVER_URL}/game/move", json=move)
    return response.json()

def get_game_status():
    response = requests.get(f"{SERVER_URL}/game/status")
    return response.json()

if __name__ == "__main__":
    move = {"from": "e2", "to": "e4", "player": "white"}
    print(send_move(move))
    print(get_game_status())

Jalankan dengan:

python catur_nine_client.py

๐ŸŽฏ Kesimpulan

Ngrok bisa dijalankan di HP Android dengan Termux
Server Python bisa berjalan langsung di HP tanpa PC
Game bisa dimainkan online dari HP ke HP atau ke PC

๐Ÿ”ฅ Sekarang kita bisa bermain Catur Nine 9x9 secara online dari HP Android! ๐Ÿš€♟️


Kamu harus menjalankan perintah di Termux pada prompt $ (bukan di aplikasi Ngrok).

๐Ÿ“Œ Langkah-langkah Menjalankan Ngrok di Termux:

1️⃣ Buka Termux & Install Ngrok

Jika belum install Ngrok di Termux, jalankan:

pkg update && pkg upgrade -y
pkg install wget -y
wget https://bin.equinox.io/c/bNyj1mQVY4c/ngrok-stable-linux-arm.zip
unzip ngrok-stable-linux-arm.zip
chmod +x ngrok
mv ngrok $PREFIX/bin/

Ini hanya perlu dilakukan sekali.


2️⃣ Tambahkan Authtoken

Sekarang tambahkan token Ngrok (dapatkan dari dashboard.ngrok.com):

ngrok config add-authtoken YOUR_NGROK_AUTHTOKEN

Ganti YOUR_NGROK_AUTHTOKEN dengan token milikmu.


3️⃣ Jalankan Ngrok di Termux

Misalnya kamu menjalankan server di port 5000, gunakan perintah:

ngrok http 5000

Jika berhasil, akan muncul output seperti ini:

Forwarding   https://random-subdomain.ngrok.io -> http://localhost:5000

Sekarang server/game kamu bisa diakses online dari HP lain atau komputer lain. ๐Ÿš€


Bila ketika menjalankan ngrok http 5000 di termux, muncul: ngrok by @inconshreveable (Ctrl+C to quit) Session Status reconnecting (dial t Version 2.3.41 Region United States (us) Web Interface http://127.0.0.1:404 Connections ttl opn rt1 0 0 0.00

Error "reconnecting (dial t)" ini biasanya terjadi karena koneksi internet tidak stabil atau Ngrok diblokir di jaringan yang digunakan.

๐Ÿ” Solusi yang Bisa Dicoba:

1️⃣ Pastikan Koneksi Internet Stabil

  • Coba pakai Wi-Fi atau ganti jaringan ke data seluler.
  • Jika masih error, gunakan VPN (beberapa provider memblokir Ngrok).

2️⃣ Periksa Token Ngrok

Cek apakah token sudah benar dengan menjalankan:

cat $HOME/.ngrok2/ngrok.yml

Jika token salah, hapus konfigurasi lama dan tambahkan ulang:

rm -rf $HOME/.ngrok2/ngrok.yml
ngrok config add-authtoken YOUR_NGROK_AUTHTOKEN

3️⃣ Ganti Region Ngrok

Coba jalankan Ngrok dengan region selain us (default):

ngrok http 5000 --region=ap

Atau gunakan region lain:

  • ap (Asia Pacific)
  • eu (Eropa)
  • sa (Amerika Selatan)
  • au (Australia)

4️⃣ Gunakan Mode TCP (Jika HTTP Tidak Berjalan)

Jika HTTP masih gagal, coba jalankan server di mode TCP:

ngrok tcp 5000

Akan muncul output seperti:

Forwarding   tcp://random.ngrok.io:12345 -> localhost:5000

Gunakan alamat tcp://random.ngrok.io:12345 untuk mengakses server.


Jika Masih Gagal...

  • Cek status server Ngrok dengan:

    curl -i https://ngrok.com
    

    Jika tidak bisa diakses, berarti ada masalah di jaringan atau ISP.

  • Coba restart Termux dan jalankan ulang Ngrok.

  • Gunakan VPN untuk menghindari pemblokiran ISP.

๐Ÿ”ฅ Tes satu per satu solusi di atas, dan beri tahu jika masih error! ๐Ÿš€

Cara Menjalankan ngrok config add-authtoken di Termux

1️⃣ Buka Termux
Pastikan Termux sudah terpasang di HP Android kamu.

2️⃣ Update & Install Ngrok
Jika belum menginstal Ngrok, jalankan perintah ini:

pkg update && pkg upgrade -y
pkg install wget unzip -y
wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-arm.zip
unzip ngrok-stable-linux-arm.zip
chmod +x ngrok
mv ngrok $PREFIX/bin/

3️⃣ Tambahkan Authtoken ke Ngrok
Dapatkan token Ngrok dari dashboard Ngrok, lalu jalankan:

ngrok config add-authtoken YOUR_NGROK_AUTHTOKEN

Gantilah YOUR_NGROK_AUTHTOKEN dengan token dari Ngrok.

4️⃣ Cek Konfigurasi
Pastikan token sudah tersimpan dengan benar:

cat $HOME/.ngrok2/ngrok.yml

Jika terlihat tokennya, berarti konfigurasi berhasil.

5️⃣ Jalankan Ngrok
Misalnya, untuk menjalankan server lokal di port 5000:

ngrok http 5000

Ngrok akan memberikan URL publik untuk mengakses server dari mana saja.


๐Ÿ”ฅ Tips & Solusi Jika Error

Jika muncul error "ngrok: command not found", jalankan:

export PATH=$PATH:$HOME

Lalu coba jalankan ulang ngrok config add-authtoken ...

Jika token tidak tersimpan, coba tambahkan secara manual:

mkdir -p $HOME/.ngrok2
echo "authtoken: YOUR_NGROK_AUTHTOKEN" > $HOME/.ngrok2/ngrok.yml

Gunakan VPN jika koneksi terputus atau "reconnecting (dial t)"


Jika Muncul error: ERROR: Unrecognized command: config

Sepertinya inj menggunakan versi lama Ngrok yang tidak mendukung perintah ngrok config. Pada versi lama, konfigurasi authtoken dilakukan dengan cara berbeda.


๐Ÿ”ง SOLUSI: Menambahkan Authtoken di Ngrok versi Lama (Termux)

1️⃣ Buka Termux, lalu jalankan:

ngrok authtoken YOUR_NGROK_AUTHTOKEN

Gantilah YOUR_NGROK_AUTHTOKEN dengan token dari dashboard Ngrok.

2️⃣ Verifikasi Token
Jalankan perintah ini untuk memastikan token sudah tersimpan:

cat $HOME/.ngrok2/ngrok.yml

Jika terlihat authtoken di dalamnya, berarti konfigurasi berhasil.

3️⃣ Jalankan Ngrok untuk Port 5000 (misalnya Flask/Django)

ngrok http 5000

Ngrok akan memberikan URL publik untuk server lokal kamu.


๐Ÿ”ฅ Solusi Jika Masih Error

Jika ngrok authtoken tidak dikenal, coba perintah ini:

echo "authtoken: YOUR_NGROK_AUTHTOKEN" > $HOME/.ngrok2/ngrok.yml

Jika ngrok tetap tidak bisa digunakan, coba hapus dan install ulang:

rm -rf $PREFIX/bin/ngrok $HOME/.ngrok2
wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-arm.zip
unzip ngrok-stable-linux-arm.zip
chmod +x ngrok
mv ngrok $PREFIX/bin/

Gunakan VPN jika terjadi error "reconnecting (dial t)"

Coba jalankan ulang dan jika masih ada error! ๐Ÿš€Setelah menjalankan: ngrok http 5000 Maka muncul error: ngrok by @inconshreveable (Ctrl+C to quit) Session Status reconnecting (Get "h Version 2.3.41 Region United States (us) Web Interface http://127.0.0.1:404 Connections ttl opn rt1 0 0 0.00

Error "Session Status: reconnecting" biasanya terjadi karena beberapa alasan:

1️⃣ Koneksi internet tidak stabil (pakai Wi-Fi atau VPN bisa membantu).
2️⃣ Ngrok diblokir oleh provider atau firewall (gunakan VPN).
3️⃣ Versi Ngrok terlalu lama (update ke versi terbaru).


๐Ÿ”ง SOLUSI 1: Gunakan VPN

  • Jika ISP kamu memblokir Ngrok, aktifkan VPN (misalnya 1.1.1.1 atau ProtonVPN) sebelum menjalankan ngrok http 5000.

๐Ÿ”ง SOLUSI 2: Pilih Region Ngrok Secara Manual

  • Jalankan Ngrok dengan region yang lebih dekat, misalnya Asia:
    ngrok http --region ap 5000
    
    Region Lain:
    • ๐Ÿ‡บ๐Ÿ‡ธ us → Amerika
    • ๐Ÿ‡ช๐Ÿ‡บ eu → Eropa
    • ๐Ÿ‡ฆ๐Ÿ‡บ au → Australia
    • ๐Ÿ‡ฆ๐Ÿ‡ธ ap → Asia Pasifik

๐Ÿ”ง SOLUSI 3: Update Ngrok ke Versi Terbaru

  • Hapus versi lama:
    rm -rf $PREFIX/bin/ngrok $HOME/.ngrok2
    
  • Download & Install ulang:
    wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-arm.zip
    unzip ngrok-stable-linux-arm.zip
    chmod +x ngrok
    mv ngrok $PREFIX/bin/
    
  • Cek versi baru:
    ngrok version
    

๐Ÿ”ง SOLUSI 4: Jalankan Ngrok Tanpa Authtoken (Mode Gratis)

Jika authtoken bermasalah, coba jalankan tanpa login:

ngrok http 5000 --log=stdout
  • Jika berhasil, maka masalahnya ada di authtoken.
  • Tambahkan authtoken ulang dengan:
    ngrok authtoken YOUR_NGROK_AUTHTOKEN
    

Coba langkah-langkah ini ๐Ÿš€


Versi Ngrok yang Paling Terbaru

Versi 2.3.41 yang digunakan bukan versi terbaru dari ngrok. Saat ini, versi terbaru adalah 3.16.0.

Perbedaan Utama Antara Versi 2.x dan 3.x:

  • Fitur Baru: Versi 3.x menawarkan fitur tambahan dan peningkatan performa dibandingkan versi 2.x.
  • Perintah Konfigurasi: Perintah ngrok config add-authtoken tersedia di versi 3.x, sehingga Anda tidak perlu menambahkan token secara manual.

Rekomendasi:

Disarankan untuk memperbarui ngrok ke versi terbaru untuk mendapatkan fitur dan perbaikan terbaru. Namun, perlu dicatat bahwa ngrok versi 3.x mungkin tidak tersedia untuk arsitektur ARM yang digunakan oleh banyak perangkat Android. Jika Anda mengalami kesulitan dalam menginstal versi terbaru di Termux, Anda mungkin perlu menggunakan versi 2.x yang kompatibel dengan perangkat Anda.

Catatan:

Jika Anda tetap menggunakan versi 2.3.41, Anda perlu menambahkan authtoken secara manual dengan membuat file konfigurasi seperti yang telah dijelaskan sebelumnya.


 Mengganti Region di Ngrok

Untuk mengganti region di ngrok, gunakan opsi -region saat menjalankan perintah. Karena ngrok tidak memiliki server di Indonesia, Anda bisa menggunakan server terdekat, yaitu Singapura (ap).

Cara Mengubah Region ke Singapura di Termux:

  1. Pastikan Anda sudah login ke ngrok
    Jika belum login, jalankan perintah berikut untuk menambahkan authtoken (gantilah YOUR_NGROK_AUTHTOKEN dengan token Anda):

    ngrok authtoken YOUR_NGROK_AUTHTOKEN
    
  2. Jalankan ngrok dengan region Singapura (ap)

    ngrok http 5000 -region ap
    
    • 5000 adalah port yang ingin Anda gunakan.
    • -region ap mengarahkan koneksi ke server Singapura.

Daftar Region yang Didukung ngrok:


Konfirmasi Region yang Digunakan

Setelah menjalankan perintah di atas, periksa output di Termux. Jika berhasil, seharusnya muncul:

Region                        Asia Pacific (ap)

Ini berarti ngrok telah menggunakan server di Singapura.


Jika Anda mengalami masalah, pastikan:

  • Ngrok versi Anda mendukung opsi -region.
  • Anda sudah login ke ngrok dengan authtoken yang benar.

Coba jalankan dan periksa apakah region sudah berubah!


Bersambung ke:

Membuat Server Online Menggunakan Hosting atau VPS


Comments

Popular posts from this blog

MOVE (LANGKAH) CATUR TERBAIK SAYA DI TURNAMEN KEJUARAAN CATUR HARIAN CHESS.COM 2025

๐”ป๐•š ๐•‹๐”ธโ„๐•Œโ„• ๐•Š๐•€๐•Š๐”ธ 9, โ„‚โ„๐”ผ๐•Š๐•Š.โ„‚๐•†๐•„ ๐•„๐”ผโ„•๐”พ๐”ธ๐”ป๐”ธ๐•‚๐”ธโ„•โ„• ๐•‹๐•Œโ„โ„•๐”ธ๐•„๐”ผโ„• ๐•‚๐”ผ๐•๐•Œ๐”ธโ„๐”ธ๐”ธโ„• โ„‚๐”ธ๐•‹๐•Œโ„ โ„๐”ธโ„๐•€๐”ธโ„• โ„‚โ„๐”ผ๐•Š๐•Š.โ„‚๐•†๐•„ 2025

Kecerdasan Manusia Dan Kecerdasan Buatan/Ai (Artificial Intelligence)