DeskVNCServer - गाइड

अपने Mac पर एक मानक VNC सर्वर चलाएँ और QuickRemote के साथ स्क्रीन, क्लिपबोर्ड, फ़ाइलें और यहाँ तक कि IME भी साझा करें — सब कुछ आपके स्थानीय नेटवर्क पर, बिना किसी क्लाउड रिले के।


शुरुआत करना

1. एक पासवर्ड सेट करें

सेटिंग्स (नीचे टूलबार में गियर आइकन) खोलें और VNC password भरें। मानक VNC क्लाइंट RFB DES चैलेंज का उपयोग करते हैं, जो केवल पहले 8 ASCII-संगत बाइट्स को मानता है — 8 वर्णों से अधिक लंबा पासवर्ड न चुनें।

छोटे पासवर्ड के बारे में: यह स्वयं RFB प्रोटोकॉल की सीमा है, DeskVNCServer की नहीं। यदि आपको अधिक मज़बूत प्रमाणीकरण चाहिए, तो सर्वर को निजी नेटवर्क तक सीमित करें या QREX प्रवाह (PIN पेयरिंग के बाद Bearer टोकन) का उपयोग करें और VNC पासवर्ड को अक्षम कर दें।

2. सर्वर शुरू करें

  1. मुख्य विंडो में, Start पर क्लिक करें। स्थिति संकेतक Running पर बदल जाता है।
  2. एक साथ चार लिसनर्स शुरू होते हैं: VNC 5900, QREX control 5911, QREX media 4010, और File API 8766
  3. Copy Info पर क्लिक करके होस्ट, पोर्ट्स और वर्तमान PIN के साथ एक पंक्ति की जानकारी अपने क्लिपबोर्ड पर कॉपी करें।

3. एक क्लाइंट कनेक्ट करें

एक मानक VNC व्यूअर (macOS Screen Sharing, RealVNC, TightVNC, मोबाइल VNC ऐप्स) के लिए:

  1. व्यूअर खोलें और पते के रूप में vnc://<your-mac-ip>:5900 दर्ज करें
  2. चरण 1 में सेट किया गया VNC password टाइप करें
  3. तुरंत अपने Mac को नियंत्रित करें — RFB पर कीबोर्ड, माउस, कॉपी/पेस्ट

QuickRemote ऐप के लिए:

  1. फ़ोन या टैबलेट पर QuickRemote खोलें, Add Mac चुनें
  2. DeskVNCServer द्वारा दिखाया गया 6 अंकों का पेयरिंग PIN दर्ज करें (या यदि आपका QuickRemote बिल्ड समर्थन करता है तो QR कोड स्कैन करें)
  3. QuickRemote लौटाए गए Bearer टोकन को संग्रहीत करता है और विस्तारित सुविधाएँ अनलॉक करता है — IME, ऑडियो, क्लिपबोर्ड सिंक और फ़ाइल स्थानांतरण

इंटरफ़ेस अवलोकन

स्थिति पंक्ति

तत्वविवरण
सर्वर लेबलइस पैनल की पहचान करता है।
स्थिति बैजजब लिसनर्स सक्रिय हों तब Running, अन्यथा Stopped

एक्शन बटन

  • Start — सभी चार लिसनर्स को शुरू करें।
  • Stop — हर लिसनर बंद करें और सक्रिय सत्रों को डिस्कनेक्ट करें।
  • Copy Info — एक छोटा कनेक्शन सारांश (होस्ट, VNC पोर्ट, कंट्रोल पोर्ट, PIN) क्लिपबोर्ड पर कॉपी करें ताकि किसी क्लाइंट के साथ आसानी से साझा कर सकें।

कनेक्शन पैनल

बाइंड होस्ट, पोर्ट्स, वर्तमान Server ID और सक्रिय पेयरिंग PIN प्रदर्शित करता है। सेटिंग्स बदलने पर पाठ स्वतः रीफ्रेश होता है।

QuickRemote API पैनल

सर्वर जिन प्रोटोकॉल्स में बात करता है उनका त्वरित संदर्भ। समर्थित RFB संस्करण, QREX एंडपॉइंट आकार और IME कमांड सेट सूचीबद्ध करता है ताकि QuickRemote (या आपका स्वयं का क्लाइंट) जान सके कि क्या उपलब्ध है।


प्रोटोकॉल्स और पोर्ट्स

सेवाडिफ़ॉल्ट पोर्टप्रोटोकॉलउपयोगकर्ता
VNC / RFBTCP 5900RFB 3.8 / 3.7 / 3.3कोई भी मानक VNC क्लाइंट
QREX controlTCP 5911HTTP JSON RPC + WebSocketQuickRemote और अन्य QREX क्लाइंट
QREX mediaUDP 4010QuickRemote-संगत पैकेटIME संदेश, ऑडियो स्ट्रीमिंग
File APITCP 8766QuickRemote-संगत HTTPफ़ाइलें ब्राउज़ करना और स्थानांतरित करना

प्रमाणीकरण

  • VNC क्लाइंट — RFB DES पासवर्ड (कॉन्फ़िगर किए गए पासवर्ड के पहले 8 ASCII-संगत बाइट्स)।
  • QREX क्लाइंटPOST /qr/v1/pair पर प्रारंभिक 6 अंकों का PIN विनिमय एक Bearer टोकन लौटाता है। प्रत्येक बाद की QREX HTTP कॉल और WebSocket फ़्रेम में Authorization: Bearer <token> शामिल होना चाहिए।
  • यदि VNC password खाली है, तो सर्वर मानक RFB no-auth मोड का विज्ञापन करता है। केवल विश्वसनीय LAN सेगमेंट के लिए उपयोगी।

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

सेटिंग्स

सेटिंगडिफ़ॉल्टविवरण
Bind host0.0.0.0सुनने के लिए इंटरफ़ेस। केवल localhost के लिए 127.0.0.1 पर सेट करें।
VNC port5900मानक RFB लिसनर के लिए TCP पोर्ट।
QREX control port5911HTTP + WebSocket QREX ट्रैफ़िक के लिए TCP पोर्ट।
QREX media UDP port4010IME और ऑडियो साइड-चैनल पैकेट्स के लिए UDP पोर्ट।
QuickRemote file API port8766फ़ाइल ब्राउज़िंग और स्थानांतरण API के लिए TCP पोर्ट।
VNC password(खाली)अधिकतम 8 ASCII-संगत बाइट्स। खाली का मतलब VNC चैनल पर no-auth है।
QREX bearer token(उत्पन्न)पेयरिंग पर जारी किया गया सक्रिय टोकन। पुनः पेयरिंग करके या इस फ़ील्ड को संपादित करके पुनः उत्पन्न करें।
Pairing PIN(उत्पन्न)पेयरिंग के दौरान QuickRemote को दिखाया गया 6 अंकों का PIN। पुनः उत्पन्न करने पर बदलता है।
Stable server ID(उत्पन्न)QuickRemote इस Mac को पहचानने के लिए जिस लंबी अवधि के पहचानकर्ता का उपयोग करता है।
Start server automaticallyOffऐप लॉन्च पर लिसनर्स को शुरू करें।
Allow remote keyboard and mouseOnबंद करने पर सत्र केवल-देखने योग्य हो जाते हैं।
Enable IME bridgeOnQREX क्लाइंट्स को macOS इनपुट मेथड को क्वेरी और नियंत्रित करने की अनुमति दें।
Enable audio APIOffQREX media UDP पर Opus ऑडियो स्ट्रीमिंग की अनुमति दें। CPU बचाने के लिए डिफ़ॉल्ट रूप से बंद।
Enable clipboard syncOnMac और रिमोट क्लाइंट के बीच क्लिपबोर्ड सामग्री को मिरर करें।
Enable file transferOnQuickRemote को फ़ाइलें सूचीबद्ध और पढ़ने दें। जब तक उत्परिवर्तन भी सक्षम न हों, केवल-पढ़ने योग्य।
Enable file mutationsOffअपलोड, नाम बदलना और हटाना अनुमति दें। डिफ़ॉल्ट रूप से बंद — केवल विश्वसनीय क्लाइंट्स के लिए चालू करें।
Max frame width1440स्क्रीन कैप्चर चौड़ाई की सीमा। कम मान बैंडविड्थ घटाते हैं।
Max frame height900स्क्रीन कैप्चर ऊँचाई की सीमा।
Frame rate12क्लाइंट्स को भेजी जाने वाली लक्षित फ्रेम प्रति सेकंड।

क्लाइंट उदाहरण

macOS Screen Sharing

  1. Finder → Go → Connect to Server
  2. vnc://<your-mac-ip>:5900 टाइप करें
  3. VNC password दर्ज करें

cURL — क्षमताएँ खोजें

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

cURL — पेयर करें और IME bridge को कॉल करें

# 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"}'

सुझाव

  • जब आप धीमी Wi-Fi लिंक पर हों या कनेक्शन को VPN के माध्यम से रूट कर रहे हों, तो फ्रेम दर और अधिकतम फ़्रेम आयाम कम करें।
  • हर डिवाइस को एक बार पेयर करें। प्रारंभिक PIN विनिमय के बाद Bearer टोकन रिबूट्स पर बना रहता है, इसलिए QuickRemote चुपचाप पुनः कनेक्ट होता है।
  • चैट या ईमेल पर कनेक्शन विवरण भेजने के एक त्वरित तरीके के रूप में Copy Info का उपयोग करें — इसमें वह सब कुछ शामिल है जो किसी क्लाइंट को चाहिए।
  • Enable file mutations को तब तक बंद रखें जब तक आपको वास्तव में अपलोड की आवश्यकता न हो। स्क्रीनशॉट, नोट्स या डाउनलोड ब्राउज़ करने के लिए केवल-पढ़ने योग्य मोड पर्याप्त है।
  • जब आप इसका उपयोग नहीं कर रहे हों तो ऑडियो API को अक्षम करें। निष्क्रिय कोडेक्स अभी भी एनकोड पथ पर थोड़ा CPU खर्च करते हैं।

समस्या निवारण

सर्वर शुरू नहीं होगा

  • एक और VNC सर्वर (उदा. macOS Screen Sharing) पहले से पोर्ट 5900 पर हो सकता है। इसे System Settings → General → Sharing से रोकें, या DeskVNCServer की सेटिंग्स में पोर्ट बदलें।
  • पोर्ट 5911 / 4010 / 8766 सभी मुक्त होने चाहिए। lsof -i :5911 और इसी तरह से जाँचें।

VNC क्लाइंट्स प्रमाणीकरण में विफल हैं

  • सुनिश्चित करें कि पासवर्ड अधिकतम 8 ASCII-संगत बाइट्स है। मल्टीबाइट वर्ण या लंबे स्ट्रिंग्स RFB DES auth द्वारा चुपचाप काट दिए जाते हैं।
  • यदि आप जानबूझकर बिना पासवर्ड चाहते हैं, तो फ़ील्ड को खाली छोड़ें और VNC no-auth का समर्थन करने वाले व्यूअर से कनेक्ट करें।

QuickRemote पेयर नहीं हो सकता

  • पुष्टि करें कि फ़ोन या टैबलेट Mac के समान Wi-Fi पर है।
  • कनेक्शन पैनल खोलें और PIN को फिर से पढ़ें। PIN को सेटिंग्स से पुनः उत्पन्न किया जा सकता है।
  • macOS फ़ायरवॉल सेटिंग्स की जाँच करें — QREX पोर्ट्स पर आने वाले कनेक्शन की अनुमति होनी चाहिए।

रिमोट नियंत्रण धीमा महसूस होता है

  • सेटिंग्स में फ्रेम दर और अधिकतम फ़्रेम आयाम कम करें।
  • CPU मुक्त करने के लिए उन सुविधाओं को अक्षम करें जिनका आप उपयोग नहीं कर रहे हैं (ऑडियो, क्लिपबोर्ड, IME)।

फ़ाइलें स्थानांतरित नहीं होतीं

  • पुष्टि करें कि Enable file transfer चालू है। केवल-पढ़ने योग्य सूचियाँ Enable file mutations के बिना काम करती हैं।
  • यदि अपलोड विफल होते हैं, तो Enable file mutations को भी सक्षम करें। अन्यथा File API केवल पढ़ने के अनुरोधों का जवाब देता है।

गोपनीयता

  • सभी सत्र सीधे क्लाइंट और आपके Mac के बीच चलते हैं। कोई क्लाउड रिले नहीं, कोई टेलीमेट्री नहीं, कोई एनालिटिक्स नहीं।
  • VNC password, QREX Bearer टोकन, पेयरिंग PIN, और Stable Server ID केवल स्थानीय ऐप सेटिंग्स में संग्रहीत होते हैं।
  • फ़ाइल उत्परिवर्तन डिफ़ॉल्ट रूप से बंद हैं। जब तक आप स्पष्ट रूप से लिखने की पहुँच नहीं देते, रिमोट क्लाइंट केवल पढ़ सकते हैं।
  • उस क्षमता को तुरंत वापस लेने के लिए किसी भी समय किसी भी एक्सटेंशन (ऑडियो, क्लिपबोर्ड, फ़ाइल स्थानांतरण, IME, रिमोट इनपुट) को अक्षम करें।
  • यदि आप सर्वर को अपने Mac तक स्थानीय रखना चाहते हैं, तो बाइंड होस्ट को 127.0.0.1 पर सेट करें।