
# Tunnel Bernama

Secara default, Termbridge menggunakan Quick Tunnel tanpa akun milik Cloudflare (`trycloudflare.com`). Tunnel ini praktis, tetapi penggunaannya yang berat dapat terkena batas laju.

Jika Anda sering menggunakan Termbridge, siapkan tunnel bernama dengan akun Cloudflare Anda.

## Mengapa menggunakan tunnel bernama?

- **Tanpa batas laju**: Quick Tunnel dapat menghasilkan error 429 saat digunakan secara intensif
- **URL yang konsisten**: Dapatkan subdomain tetap, bukan string acak
- **Domain khusus**: Gunakan domain Anda sendiri seperti `term.example.com`
- **Keandalan lebih baik**: Tunnel bernama lebih stabil untuk sesi yang panjang

## Penyiapan

### 1. Buat akun Cloudflare

Daftar di [cloudflare.com](https://cloudflare.com) jika Anda belum memilikinya.

### 2. Buat tunnel di Zero Trust

1. Buka [Cloudflare Zero Trust](https://one.dash.cloudflare.com/)
2. Buka **Networks** → **Tunnels**
3. Klik **Create a tunnel**
4. Pilih **Cloudflared** sebagai konektor
5. Beri nama tunnel Anda (mis., e.g, `termbridge`)
6. Salin token tunnel

### 3. Tambahkan hostname publik

1. Di pengaturan tunnel, buka **Public Hostname**
2. Tambahkan hostname yang mengarah ke `http://localhost:8080` (atau port pilihan Anda)
3. Gunakan subdomain seperti `term.example.com`

### 4. Jalankan Termbridge dengan token Anda

```bash
termbridge --port 8080 --tunnel-token <TOKEN> --tunnel-url https://term.example.com
```

Atau gunakan variabel lingkungan:

```bash
export TERMBRIDGE_TUNNEL_TOKEN=<TOKEN>
export TERMBRIDGE_TUNNEL_URL=https://term.example.com

termbridge --port 8080
```

> **Catatan**
> Flag `--port` wajib digunakan dengan tunnel bernama karena hostname dikonfigurasi agar mengarah ke port tertentu.


## Opsi konfigurasi

| Flag | Variabel Lingkungan | Deskripsi |
|------|---------------------|-------------|
| `--port <port>` | - | Port lokal (wajib untuk tunnel bernama) |
| `--tunnel-token <token>` | `TERMBRIDGE_TUNNEL_TOKEN` | Token tunnel Anda |
| `--tunnel-url <url>` | `TERMBRIDGE_TUNNEL_URL` | Hostname publik Anda URL |

## Menonaktifkan tunnel sepenuhnya

Jika Anda memiliki reverse proxy sendiri atau URL publik:

```bash
termbridge --no-tunnel --public-url https://your-server.com
```

Atau:

```bash
export TERMBRIDGE_TUNNEL=none
export TERMBRIDGE_PUBLIC_URL=https://your-server.com

termbridge
```

Termbridge akan melewati proses memulai tunnel dan menggunakan URL yang Anda berikan untuk kode QR.

## Pemecahan masalah

### "429 Too Many Requests"

Artinya Quick Tunnel terkena batas laju. Solusi:

1. Tunggu beberapa menit lalu coba lagi
2. Hentikan proses `cloudflared` yang tidak aktif: `pkill cloudflared`
3. Beralih ke tunnel bernama (disarankan)

### Tunnel dimulai, tetapi URL tidak berfungsi

- Pastikan hostname di Cloudflare cocok dengan `--tunnel-url`
- Periksa apakah port di Cloudflare cocok dengan `--port`
- Pastikan cloudflared sudah diperbarui: `cloudflared update`

### Tunnel bernama tidak dapat tersambung

- Pastikan token Anda benar
- Periksa dasbor Cloudflare Zero Trust untuk melihat error
- Coba jalankan `cloudflared tunnel run <TOKEN>` secara langsung untuk melihat pesan error
