הריצו שרת VNC סטנדרטי על ה-Mac שלכם ושתפו מסך, לוח גזירה, קבצים ואפילו IME עם QuickRemote — והכל ברשת המקומית, ללא ממסר ענן.
תחילת העבודה
1. הגדרת סיסמה
פתחו את ההגדרות (סמל הגלגל בסרגל הכלים התחתון) ומלאו את VNC password. לקוחות VNC סטנדרטיים משתמשים באתגר RFB DES, שמכבד רק את 8 הבייטים הראשונים התואמים ל-ASCII — בחרו סיסמה שלא ארוכה מ-8 תווים.
על סיסמאות קצרות: זוהי מגבלה של פרוטוקול RFB עצמו, לא של DeskVNCServer. אם אתם צריכים אימות חזק יותר, הגבילו את השרת לרשת פרטית או השתמשו בזרימת QREX (אסימון Bearer לאחר התאמת PIN) והשביתו את סיסמת ה-VNC.
2. הפעלת השרת
- בחלון הראשי לחצו על Start. מחוון הסטטוס מתחלף ל-Running.
- ארבעה מאזינים עולים בו-זמנית: VNC
5900, QREX control5911, QREX media4010, ו-File API8766. - לחצו על Copy Info כדי להעתיק שורה אחת המכילה את המארח, את הפורטים ואת ה-PIN הנוכחי אל לוח הגזירה.
3. חיבור לקוח
עבור מציג VNC סטנדרטי (macOS Screen Sharing, RealVNC, TightVNC, יישומי VNC לנייד):
- פתחו את המציג והזינו
vnc://<your-mac-ip>:5900ככתובת - הקלידו את VNC password שהגדרתם בשלב 1
- שלטו במק שלכם מיד — מקלדת, עכבר, העתק/הדבק דרך RFB
עבור היישום QuickRemote:
- פתחו את QuickRemote בטלפון או בטאבלט, ובחרו Add Mac
- הזינו את ה-PIN בן 6 הספרות להתאמה ש-DeskVNCServer מציג (או סרקו את קוד ה-QR אם גרסת ה-QuickRemote שלכם תומכת בכך)
- QuickRemote שומר את אסימון ה-Bearer שהוחזר ופותח את היכולות המורחבות — IME, אודיו, סינכרון לוח גזירה והעברת קבצים
סקירת ממשק
שורת סטטוס
| אלמנט | תיאור |
|---|---|
| תווית שרת | מזהה את הפאנל הזה. |
| תג סטטוס | Running בזמן שהמאזינים פעילים, Stopped אחרת. |
לחצני פעולה
- Start — מעלה את כל ארבעת המאזינים.
- Stop — סוגר כל מאזין ומנתק הפעלות פעילות.
- Copy Info — מעתיק סיכום חיבור קצר (מארח, פורט VNC, פורט בקרה, PIN) ללוח הגזירה לשיתוף קל עם לקוח.
פאנל חיבור
מציג את מארח הקישור, הפורטים, ה-Server ID הנוכחי וה-PIN הפעיל להתאמה. הטקסט מתרענן אוטומטית כאשר ההגדרות משתנות.
פאנל QuickRemote API
הפניה מהירה לפרוטוקולים שהשרת דובר. מציג את גרסאות RFB הנתמכות, את צורות נקודות הקצה של QREX ואת ערכת פקודות ה-IME, כך ש-QuickRemote (או הלקוח שלכם) יודע מה זמין.
פרוטוקולים ופורטים
| שירות | פורט ברירת מחדל | פרוטוקול | בשימוש על-ידי |
|---|---|---|---|
| VNC / RFB | TCP 5900 | RFB 3.8 / 3.7 / 3.3 | כל לקוח VNC סטנדרטי |
| QREX control | TCP 5911 | HTTP JSON RPC + WebSocket | QuickRemote ולקוחות QREX אחרים |
| QREX media | UDP 4010 | חבילות תואמות QuickRemote | הודעות IME, שידור אודיו |
| File API | TCP 8766 | HTTP תואם QuickRemote | עיון והעברת קבצים |
אימות
- לקוחות VNC — סיסמת RFB DES (8 הבייטים הראשונים התואמים ל-ASCII של הסיסמה המוגדרת).
- לקוחות QREX — חילופי PIN ראשוניים בני 6 ספרות ב-
POST /qr/v1/pairמחזירים אסימון Bearer. כל קריאת HTTP של QREX וכל מסגרת 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 host | 0.0.0.0 | הממשק להאזנה. הגדירו ל-127.0.0.1 עבור localhost בלבד. |
| VNC port | 5900 | פורט TCP עבור מאזין ה-RFB הסטנדרטי. |
| QREX control port | 5911 | פורט TCP עבור תעבורת HTTP + WebSocket של QREX. |
| QREX media UDP port | 4010 | פורט UDP עבור חבילות ערוץ צד של IME ואודיו. |
| QuickRemote file API port | 8766 | פורט TCP עבור API לעיון ולהעברת קבצים. |
| VNC password | (ריק) | עד 8 בייטים תואמי ASCII. ריק פירושו no-auth בערוץ ה-VNC. |
| QREX bearer token | (נוצר) | אסימון פעיל שהונפק בעת ההתאמה. צרו אותו מחדש על-ידי התאמה חוזרת או עריכת השדה הזה. |
| Pairing PIN | (נוצר) | PIN בן 6 ספרות המוצג ל-QuickRemote בעת ההתאמה. מתחלף בעת יצירה מחדש. |
| Stable server ID | (נוצר) | מזהה ארוך טווח ש-QuickRemote משתמש בו כדי לזהות את ה-Mac הזה. |
| Start server automatically | Off | הפעלת המאזינים בעת השקת היישום. |
| Allow remote keyboard and mouse | On | כיבוי הופך את ההפעלות לצפייה בלבד. |
| Enable IME bridge | On | אפשרו ללקוחות QREX לתשאל ולשלוט בשיטת הקלט של macOS. |
| Enable audio API | Off | אפשרו שידור אודיו Opus על-גבי QREX media UDP. כבוי כברירת מחדל לחיסכון ב-CPU. |
| Enable clipboard sync | On | שיקוף תוכן לוח הגזירה בין ה-Mac ללקוח המרוחק. |
| Enable file transfer | On | אפשרו ל-QuickRemote לפרט ולקרוא קבצים. לקריאה בלבד אלא אם המוטציות מופעלות גם הן. |
| Enable file mutations | Off | אפשרו העלאה, שינוי שם ומחיקה. כבוי כברירת מחדל — הפעילו רק עבור לקוחות מהימנים. |
| Max frame width | 1440 | תקרה על רוחב לכידת המסך. ערכים נמוכים מפחיתים רוחב פס. |
| Max frame height | 900 | תקרה על גובה לכידת המסך. |
| Frame rate | 12 | מספר פריימים יעד בשנייה הנשלח ללקוחות. |
דוגמאות לקוח
macOS Screen Sharing
- Finder → Go → Connect to Server
- הקלידו
vnc://<your-mac-ip>:5900 - הזינו את VNC password
cURL — גילוי יכולות
curl http://<your-mac-ip>:5911/qr/v1/capabilities
cURL — התאמה וקריאה לגשר 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"}'
טיפים
- הורידו את קצב הפריימים ואת הממדים המקסימליים של פריים כאשר אתם על חיבור Wi-Fi איטי או מנתבים את החיבור דרך VPN.
- התאימו כל מכשיר פעם אחת. לאחר חילופי ה-PIN הראשוניים, אסימון ה-Bearer שורד הפעלה מחדש, כך ש-QuickRemote מתחבר שוב בשקט.
- השתמשו ב-Copy Info כדרך מהירה לשלוח פרטי חיבור בצ'אט או באימייל — הוא כולל את כל מה שלקוח צריך.
- השאירו את Enable file mutations כבוי אלא אם אתם באמת צריכים העלאות. מצב הקריאה בלבד מספיק לעיון בצילומי מסך, הערות או הורדות.
- השביתו את ה-Audio API כאשר אינכם משתמשים בו. קודקים סרק עדיין עולים מעט CPU בנתיב הקידוד.
פתרון בעיות
השרת אינו נדלק
- ייתכן ששרת VNC אחר (למשל macOS Screen Sharing) כבר נמצא בפורט 5900. עצרו אותו מ-System Settings → General → Sharing, או שנו את הפורט בהגדרות של DeskVNCServer.
- הפורטים 5911 / 4010 / 8766 חייבים להיות פנויים. בדקו עם
lsof -i :5911ודומיו.
לקוחות VNC נכשלים באימות
- ודאו שהסיסמה היא לכל היותר 8 בייטים תואמי ASCII. תווים מרובי-בייט או מחרוזות ארוכות יותר נקטעים בשקט על-ידי אימות RFB DES.
- אם אתם רוצים בכוונה ללא סיסמה, השאירו את השדה ריק והתחברו עם מציג שתומך ב-VNC no-auth.
QuickRemote אינו מצליח להתאים
- ודאו שהטלפון או הטאבלט נמצאים באותו Wi-Fi כמו ה-Mac.
- פתחו את פאנל החיבור וקראו שוב את ה-PIN. ניתן ליצור מחדש את ה-PIN מההגדרות.
- בדקו את הגדרות חומת האש של macOS — יש לאפשר חיבורים נכנסים בפורטים של QREX.
השליטה המרוחקת מרגישה איטית
- הורידו את קצב הפריימים ואת הממדים המקסימליים של פריים בהגדרות.
- השביתו תכונות שאינכם משתמשים בהן (אודיו, לוח גזירה, IME) כדי לפנות CPU.
קבצים אינם מועברים
- ודאו ש-Enable file transfer פעיל. רשימות לקריאה בלבד עובדות ללא Enable file mutations.
- אם העלאות נכשלות, הפעילו גם את Enable file mutations. אחרת, ה-File API מגיב רק לבקשות קריאה.
פרטיות
- כל ההפעלות רצות ישירות בין הלקוח ל-Mac שלכם. אין ממסר ענן, אין טלמטריה, אין אנליטיקה.
- סיסמת VNC, אסימון QREX Bearer, PIN ההתאמה ו-Stable Server ID נשמרים רק בהגדרות היישום המקומיות.
- מוטציות קבצים כבויות כברירת מחדל. לקוחות מרוחקים יכולים רק לקרוא עד שתעניקו במפורש גישת כתיבה.
- השביתו כל הרחבה (אודיו, לוח גזירה, העברת קבצים, IME, קלט מרוחק) בכל עת כדי לבטל מיד את היכולת הזו.
- אם ברצונכם להשאיר את השרת מקומי ל-Mac שלכם, הגדירו את מארח הקישור ל-
127.0.0.1.