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:
- Setelah login, buka halaman "Your Authtoken" di:
๐ https://dashboard.ngrok.com/get-started/your-authtoken - Salin token yang diberikan, misalnya:
ngrok config add-authtoken 2O9F1m6Kp3zZzRANDOMTOKEN
๐น 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:
Region Lain:ngrok http --region ap 5000
- ๐บ๐ธ
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:
-
Pastikan Anda sudah login ke ngrok
Jika belum login, jalankan perintah berikut untuk menambahkan authtoken (gantilahYOUR_NGROK_AUTHTOKEN
dengan token Anda):ngrok authtoken YOUR_NGROK_AUTHTOKEN
-
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
Post a Comment