DeskVNCServer - Handleiding

Voer een standaard VNC-server uit op uw Mac en deel het scherm, klembord, bestanden en zelfs de IME met QuickRemote — volledig op uw lokale netwerk, zonder cloudrelay.


Aan de slag

1. Stel een wachtwoord in

Open Instellingen (tandwielpictogram, onderste werkbalk) en vul VNC-wachtwoordin. Standaard VNC-clients gebruiken de RFB DES-challenge, die alleen de eerste 8 ASCII-compatibele bytes gebruikt — kies een wachtwoord van maximaal 8 tekens.

Over korte wachtwoorden: Dit is een beperking van het RFB-protocol zelf, niet van DeskVNCServer. Als u sterkere verificatie nodig hebt, beperk de server dan tot een privénetwerk of gebruik de QREX-stroom (Bearer-token na koppeling met een PIN) en schakel het VNC-wachtwoord uit.

2. Start de server

  1. Klik in het hoofdvenster op Start. De statusindicator verandert in Actief.
  2. Er worden tegelijk vier listeners gestart: VNC 5900, QREX-besturing 5911, QREX-media 4010, en de bestands-API 8766.
  3. Klik op Info kopiëren om een regel met de host, poorten en huidige PIN naar uw klembord te kopiëren.

3. Verbind een client

Voor een standaard VNC-viewer (macOS Schermdeling, RealVNC, TightVNC, mobiele VNC-apps):

  1. Open de viewer en voer vnc://<your-mac-ip>:5900 in als adres
  2. Typ het VNC-wachtwoord dat u in stap 1 hebt ingesteld
  3. Bedien uw Mac direct — toetsenbord, muis, kopiëren/plakken via RFB

Voor de QuickRemote-app:

  1. Open QuickRemote op de telefoon of tablet, kies Mac toevoegen
  2. Voer de 6-cijferige koppel-PIN in die DeskVNCServer toont (of scan de QR-code als uw QuickRemote-build dit ondersteunt)
  3. QuickRemote bewaart het teruggestuurde Bearer-token en ontgrendelt de uitgebreide functies — IME, audio, klembordsynchronisatie en bestandsoverdracht

Overzicht van de interface

Statusrij

ElementBeschrijving
ServerlabelIdentificeert dit paneel.
StatusbadgeActief terwijl de listeners actief zijn, Gestopt in andere gevallen.

Actieknoppen

  • Start — Start alle vier de listeners.
  • Stop — Sluit elke listener en verbreek actieve sessies.
  • Info kopiëren — Kopieer een korte verbindingssamenvatting (host, VNC-poort, besturingspoort, PIN) naar het klembord om deze eenvoudig met een client te delen.

Verbindingspaneel

Toont de bind-host, poorten, huidige Server ID en de actieve koppel-PIN. De tekst wordt automatisch vernieuwd wanneer instellingen wijzigen.

QuickRemote API-paneel

Korte referentie voor de protocollen die de server gebruikt. Geeft de ondersteunde RFB-versies, de vormen van QREX-eindpunten en de IME-opdrachtenset weer, zodat QuickRemote (of uw eigen client) weet wat beschikbaar is.


Protocollen en poorten

ServiceStandaardpoortProtocolGebruikt door
VNC / RFBTCP 5900RFB 3.8 / 3.7 / 3.3Elke standaard VNC-client
QREX-besturingTCP 5911HTTP JSON RPC + WebSocketQuickRemote en andere QREX-clients
QREX-mediaUDP 4010QuickRemote-compatibele pakkettenIME-berichten, audiostreaming
Bestands-APITCP 8766QuickRemote-compatibele HTTPBestanden bekijken en overdragen

Verificatie

  • VNC-clients — RFB DES-wachtwoord (eerste 8 ASCII-compatibele bytes van het geconfigureerde wachtwoord).
  • QREX-clients — Eerste uitwisseling van een 6-cijferige PIN bij POST /qr/v1/pair geeft een Bearer-token terug. Elke volgende QREX HTTP-aanroep en elk WebSocket-frame moet bevatten Authorization: Bearer <token>.
  • Als het VNC-wachtwoord leeg is, kondigt de server de standaard RFB-modus zonder verificatie aan. Alleen nuttig voor vertrouwde LAN-segmenten.

Korte referentie van QREX-eindpunten

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

Instellingen

InstellingStandaardBeschrijving
Bind-host0.0.0.0Interface waarop wordt geluisterd. Stel in op 127.0.0.1 voor alleen localhost.
VNC-poort5900TCP-poort voor de standaard RFB-listener.
QREX-besturingspoort5911TCP-poort voor HTTP + WebSocket QREX-verkeer.
QREX-media-UDP-poort4010UDP-poort voor IME- en audio-sidechannelpakketten.
QuickRemote bestands-API-poort8766TCP-poort voor de API voor bestandsverkenning en -overdracht.
VNC-wachtwoord(leeg)Maximaal 8 ASCII-compatibele bytes. Leeg betekent geen verificatie op het VNC-kanaal.
QREX Bearer-token(gegenereerd)Actief token dat bij koppeling is uitgegeven. Genereer opnieuw door opnieuw te koppelen of dit veld te bewerken.
Koppel-PIN(gegenereerd)6-cijferige PIN die tijdens het koppelen aan QuickRemote wordt getoond. Vernieuwt wanneer u opnieuw genereert.
Stabiele server-ID(gegenereerd)Duurzame identificatie die QuickRemote gebruikt om deze Mac te herkennen.
Server automatisch startenUitStart de listeners bij het openen van de app.
Extern toetsenbord en muis toestaanAanSchakel uit om sessies alleen-lezen te maken.
IME-brug inschakelenAanQREX-clients toestaan de macOS-invoermethode op te vragen en te bedienen.
Audio-API inschakelenUitSta Opus-audiostreaming via QREX media UDP toe. Standaard uitgeschakeld om CPU te besparen.
Klembordsynchronisatie inschakelenAanSpiegel de klembordinhoud tussen Mac en externe client.
Bestandsoverdracht inschakelenAanSta QuickRemote toe bestanden weer te geven en te lezen. Alleen-lezen tenzij mutaties ook zijn ingeschakeld.
Bestandsmutaties inschakelenUitSta uploads, hernoemen en verwijderen toe. Standaard uitgeschakeld — schakel alleen in voor vertrouwde clients.
Maximale framebreedte1440Limiet voor de breedte van schermopname. Lagere waarden verminderen de bandbreedte.
Maximale framehoogte900Limiet voor de hoogte van schermopname.
Framesnelheid12Doelaantal frames per seconde dat naar clients wordt verzonden.

Voorbeelden voor clients

macOS Schermdeling

  1. Finder → Ga → Verbind met server
  2. Typ vnc://<your-mac-ip>:5900
  3. Voer het VNC-wachtwoord in

cURL — mogelijkheden ontdekken

curl http://<your-mac-ip>:5911/qr/v1/capabilities

cURL — koppel en roep de IME-brug aan

# 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

  • Verlaag de framesnelheid en de maximale frameafmetingen wanneer u een trage Wi-Fi-verbinding gebruikt of de verbinding via een VPN routeert.
  • Koppel elk apparaat één keer. Na de eerste PIN-uitwisseling blijft het Bearer-token na herstarts bestaan, zodat QuickRemote stilzwijgend opnieuw verbinding maakt.
  • Gebruik Info kopiëren als snelle manier om verbindingsgegevens via chat of e-mail te sturen — het bevat alles wat een client nodig heeft.
  • Houd Bestandsmutaties inschakelen uitgeschakeld tenzij u echt uploads nodig hebt. De alleen-lezenmodus is voldoende om schermafbeeldingen, notities of downloads te bekijken.
  • Schakel de audio-API uit wanneer u die niet gebruikt. Niet-actieve codecs kosten nog steeds een kleine hoeveelheid CPU in het coderingspad.

Problemen oplossen

De server start niet

  • Er draait mogelijk al een andere VNC-server (bijvoorbeeld macOS Schermdeling) op poort 5900. Stop deze via Systeeminstellingen → Algemeen → Delen, of wijzig de poort in de instellingen van DeskVNCServer.
  • De poorten 5911 / 4010 / 8766 moeten alle vrij zijn. Controleer met lsof -i :5911 en vergelijkbare opdrachten.

VNC-clients kunnen niet verifiëren

  • Controleer of het wachtwoord maximaal 8 ASCII-compatibele bytes bevat. Multibyte tekens of langere tekenreeksen worden stilzwijgend afgekapt door de RFB DES-verificatie.
  • Als u bewust geen wachtwoord wilt, laat u het veld leeg en maakt u verbinding met een viewer die VNC zonder verificatie ondersteunt.

QuickRemote kan niet koppelen

  • Controleer of de telefoon of tablet met hetzelfde Wi-Fi-netwerk als de Mac is verbonden.
  • Open het verbindingspaneel en lees de PIN opnieuw. De PIN kan vanuit Instellingen opnieuw worden gegenereerd.
  • Controleer de macOS-firewallinstellingen — inkomende verbindingen op de QREX-poorten moeten zijn toegestaan.

Externe bediening reageert traag

  • Verlaag in Instellingen de framesnelheid en de maximale frameafmetingen.
  • Schakel functies die u niet gebruikt uit (audio, klembord, IME) om CPU vrij te maken.

Bestanden worden niet overgedragen

  • Controleer of Bestandsoverdracht inschakelen is ingeschakeld. Alleen-lezenlijsten werken zonder Bestandsmutaties inschakelen.
  • Als uploads mislukken, schakel dan ook Bestandsmutaties inschakelen. Anders reageert de bestands-API alleen op leesaanvragen.

Privacy

  • Alle sessies verlopen rechtstreeks tussen de client en uw Mac. Er is geen cloudrelay, geen telemetrie en geen analyse.
  • Het VNC-wachtwoord, QREX Bearer-token, de koppel-PIN en stabiele Server ID worden uitsluitend in de lokale app-instellingen opgeslagen.
  • Bestandsmutaties zijn standaard uitgeschakeld. Externe clients kunnen alleen lezen totdat u expliciet schrijfrechten verleent.
  • Schakel een extensie (audio, klembord, bestandsoverdracht, IME, externe invoer) op elk moment uit om die mogelijkheid onmiddellijk in te trekken.
  • Als u de server lokaal op uw Mac wilt houden, stelt u de bind-host in op 127.0.0.1.