Jalankan server VNC standar di Mac Anda dan bagikan layar, papan klip, berkas, bahkan IME dengan QuickRemote — semuanya di jaringan lokal Anda, tanpa relai cloud.
Memulai
1. Tetapkan Kata Sandi
Buka Pengaturan (ikon roda gigi di bilah alat bawah) lalu isi Kata sandi VNC. Klien VNC standar memakai tantangan DES RFB yang hanya menghormati 8 byte pertama yang kompatibel dengan ASCII — pilih kata sandi tidak lebih dari 8 karakter.
2. Jalankan Server
- Di jendela utama, klik Mulai. Indikator status akan berubah menjadi Berjalan.
- Empat listener aktif sekaligus: VNC
5900, kontrol QREX5911, media QREX4010, dan API berkas8766. - Klik Salin Info untuk menyalin satu baris berisi host, port, dan PIN saat ini ke papan klip Anda.
3. Hubungkan Klien
Untuk penampil VNC standar (macOS Screen Sharing, RealVNC, TightVNC, aplikasi VNC seluler):
- Buka penampil lalu masukkan
vnc://<your-mac-ip>:5900sebagai alamatnya - Ketik kata sandi VNC yang Anda tetapkan pada langkah 1
- Kendalikan Mac Anda seketika — papan ketik, tetikus, salin/tempel melalui RFB
Untuk aplikasi QuickRemote:
- Buka QuickRemote di ponsel atau tablet, lalu pilih Tambah Mac
- Masukkan PIN pemasangan 6 digit yang ditampilkan DeskVNCServer (atau pindai kode QR jika versi QuickRemote Anda mendukungnya)
- QuickRemote menyimpan token Bearer yang diterima dan membuka fitur lanjutan — IME, audio, sinkronisasi papan klip, dan transfer berkas
Sekilas Antarmuka
Baris Status
| Elemen | Deskripsi |
|---|---|
| Label server | Menandai panel ini. |
| Lencana status | Berjalan selama listener aktif, Berhenti jika tidak. |
Tombol Aksi
- Mulai — Mengaktifkan keempat listener sekaligus.
- Hentikan — Menutup semua listener dan memutus sesi yang sedang aktif.
- Salin Info — Menyalin ringkasan koneksi singkat (host, port VNC, port kontrol, PIN) ke papan klip agar mudah dibagikan kepada klien.
Panel Koneksi
Menampilkan host bind, port, Server ID saat ini, dan PIN pemasangan yang aktif. Teksnya diperbarui otomatis ketika pengaturan berubah.
Panel API QuickRemote
Referensi singkat untuk protokol yang dipakai server. Mencantumkan versi RFB yang didukung, bentuk endpoint QREX, dan kumpulan perintah IME sehingga QuickRemote (atau klien buatan Anda sendiri) tahu apa saja yang tersedia.
Protokol dan Port
| Layanan | Port default | Protokol | Dipakai oleh |
|---|---|---|---|
| VNC / RFB | TCP 5900 | RFB 3.8 / 3.7 / 3.3 | Klien VNC standar apa pun |
| Kontrol QREX | TCP 5911 | HTTP JSON RPC + WebSocket | QuickRemote dan klien QREX lainnya |
| Media QREX | UDP 4010 | Paket yang kompatibel dengan QuickRemote | Pesan IME, streaming audio |
| API Berkas | TCP 8766 | HTTP yang kompatibel dengan QuickRemote | Menjelajah dan mentransfer berkas |
Autentikasi
- Klien VNC — Kata sandi DES RFB (8 byte pertama yang kompatibel dengan ASCII dari kata sandi yang dikonfigurasi).
- Klien QREX — Pertukaran PIN 6 digit awal di
POST /qr/v1/pairmengembalikan token Bearer. Setiap panggilan HTTP QREX dan frame WebSocket berikutnya harus menyertakanAuthorization: Bearer <token>. - Jika kata sandi VNC dikosongkan, server mengumumkan mode RFB tanpa autentikasi. Hanya cocok untuk segmen LAN tepercaya.
Referensi singkat endpoint QREX
GET /qr/v1/capabilities # public, returns supported features
POST /qr/v1/pair # public, exchange PIN for Bearer token
GET /qr/v1/ws # WebSocket, auth required
POST /qr/v1/ime/get # auth required, query active IME
POST /qr/v1/ime/list # auth required, list available IMEs
POST /qr/v1/ime/set # auth required, switch IME
POST /qr/v1/ime/toggle # auth required, toggle IME on/off
POST /qr/v1/ime/commit # auth required, commit a text string
Pengaturan
| Pengaturan | Default | Deskripsi |
|---|---|---|
| Host bind | 0.0.0.0 | Antarmuka tempat server mendengarkan. Setel ke 127.0.0.1 untuk hanya localhost. |
| Port VNC | 5900 | Port TCP untuk listener RFB standar. |
| Port kontrol QREX | 5911 | Port TCP untuk lalu lintas QREX HTTP + WebSocket. |
| Port UDP media QREX | 4010 | Port UDP untuk paket kanal samping IME dan audio. |
| Port API berkas QuickRemote | 8766 | Port TCP untuk API penjelajahan dan transfer berkas. |
| Kata sandi VNC | (kosong) | Maksimal 8 byte yang kompatibel dengan ASCII. Kosong berarti tanpa autentikasi pada kanal VNC. |
| Token bearer QREX | (dihasilkan otomatis) | Token aktif yang diterbitkan saat pemasangan. Buat ulang dengan memasangkan kembali atau menyunting kolom ini. |
| PIN pemasangan | (dihasilkan otomatis) | PIN 6 digit yang ditampilkan ke QuickRemote saat pemasangan. Berganti setiap kali Anda membuatnya ulang. |
| ID server tetap | (dihasilkan otomatis) | Pengenal berumur panjang yang dipakai QuickRemote untuk mengenali Mac ini. |
| Jalankan server secara otomatis | Nonaktif | Mengaktifkan listener saat aplikasi dijalankan. |
| Izinkan papan ketik dan tetikus jarak jauh | Aktif | Matikan untuk menjadikan sesi hanya-lihat. |
| Aktifkan jembatan IME | Aktif | Izinkan klien QREX menanyakan dan mengendalikan metode input macOS. |
| Aktifkan API audio | Nonaktif | Izinkan streaming audio Opus melalui UDP media QREX. Nonaktif secara default untuk menghemat CPU. |
| Aktifkan sinkronisasi papan klip | Aktif | Menyelaraskan isi papan klip antara Mac dan klien jarak jauh. |
| Aktifkan transfer berkas | Aktif | Izinkan QuickRemote menampilkan dan membaca berkas. Hanya-baca kecuali perubahan berkas ikut diaktifkan. |
| Aktifkan perubahan berkas | Nonaktif | Izinkan unggah, ubah nama, dan hapus. Nonaktif secara default — aktifkan hanya untuk klien tepercaya. |
| Lebar frame maksimum | 1440 | Batas lebar tangkapan layar. Nilai yang lebih kecil menghemat bandwidth. |
| Tinggi frame maksimum | 900 | Batas tinggi tangkapan layar. |
| Laju frame | 12 | Target frame per detik yang dikirim ke klien. |
Contoh Klien
macOS Screen Sharing
- Finder → Go → Connect to Server
- Ketik
vnc://<your-mac-ip>:5900 - Masukkan kata sandi VNC
cURL — menemukan kemampuan
curl http://<your-mac-ip>:5911/qr/v1/capabilities
cURL — memasangkan dan memanggil jembatan IME
# 1. Exchange the PIN for a Bearer token
TOKEN=$(curl -s http://<your-mac-ip>:5911/qr/v1/pair \
-H "Content-Type: application/json" \
-d '{"pin":"123456"}' | jq -r .token)
# 2. Commit text via the IME bridge
curl http://<your-mac-ip>:5911/qr/v1/ime/commit \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"text":"hello from remote"}'
Tips
- Turunkan laju frame dan dimensi frame maksimum saat Anda berada di koneksi Wi-Fi yang lambat atau menyalurkan koneksi lewat VPN.
- Pasangkan setiap perangkat sekali saja. Setelah pertukaran PIN awal, token Bearer bertahan melewati mulai ulang, sehingga QuickRemote terhubung kembali tanpa campur tangan Anda.
- Gunakan Salin Info sebagai cara cepat mengirim detail koneksi lewat obrolan atau surel — di dalamnya sudah ada semua yang dibutuhkan klien.
- Biarkan Aktifkan perubahan berkas tetap nonaktif kecuali Anda benar-benar membutuhkan unggahan. Mode hanya-baca sudah cukup untuk menjelajah tangkapan layar, catatan, atau unduhan.
- Nonaktifkan API audio saat tidak dipakai. Codec yang menganggur tetap memakan sedikit CPU pada jalur enkode.
Pemecahan Masalah
Server tidak mau dijalankan
- Server VNC lain (mis. macOS Screen Sharing) mungkin sudah memakai port 5900. Hentikan lewat System Settings → General → Sharing, atau ubah portnya di pengaturan DeskVNCServer.
- Port 5911 / 4010 / 8766 semuanya harus bebas. Periksa dengan
lsof -i :5911dan perintah sejenisnya.
Klien VNC gagal melakukan autentikasi
- Pastikan kata sandi paling banyak 8 byte yang kompatibel dengan ASCII. Karakter multibyte atau teks yang lebih panjang dipangkas diam-diam oleh autentikasi DES RFB.
- Jika Anda memang sengaja tidak ingin memakai kata sandi, kosongkan kolomnya lalu hubungkan dengan penampil yang mendukung VNC tanpa autentikasi.
QuickRemote tidak bisa dipasangkan
- Pastikan ponsel atau tablet berada di Wi-Fi yang sama dengan Mac.
- Buka panel Koneksi lalu baca ulang PIN-nya. PIN dapat dibuat ulang dari Pengaturan.
- Periksa pengaturan firewall macOS — koneksi masuk pada port QREX harus diizinkan.
Kendali jarak jauh terasa lambat
- Turunkan laju frame dan dimensi frame maksimum di Pengaturan.
- Nonaktifkan fitur yang tidak Anda pakai (audio, papan klip, IME) untuk melegakan CPU.
Berkas tidak terkirim
- Pastikan Aktifkan transfer berkas sudah aktif. Daftar hanya-baca tetap berfungsi tanpa Aktifkan perubahan berkas.
- Jika unggahan gagal, aktifkan juga Aktifkan perubahan berkas. Jika tidak, API berkas hanya menanggapi permintaan baca.
Privasi
- Semua sesi berjalan langsung antara klien dan Mac Anda. Tidak ada relai cloud, tidak ada telemetri, tidak ada analitik.
- Kata sandi VNC, token Bearer QREX, PIN pemasangan, dan ID Server tetap hanya disimpan di pengaturan aplikasi lokal.
- Perubahan berkas nonaktif secara default. Klien jarak jauh hanya dapat membaca sampai Anda memberikan akses tulis secara eksplisit.
- Nonaktifkan ekstensi apa pun (audio, papan klip, transfer berkas, IME, input jarak jauh) kapan saja untuk mencabut kemampuan itu seketika.
- Jika Anda ingin server tetap lokal di Mac Anda, setel host bind ke
127.0.0.1.