本頁使用了標題或全文手工轉換

VNC

維基百科,自由的百科全書
前往: 導覽搜尋
KDE內的VNC顯示遠端Windows的畫面

VNC(Virtual Network Computing),為一種使用RFB協定的螢幕畫面分享及遠端操作軟體。此軟體藉由網路,可傳送鍵盤與滑鼠的動作及即時的螢幕畫面。

VNC與作業系統無關,因此可跨平台使用,例如可用Windows連線到某Linux的電腦,反之亦同。甚至在沒有安裝用戶端程式的電腦中,只要有支援JAVA瀏覽器,也可使用。

簡史[編輯]

VNC由Olivetti & Oracle研究室所開發,此研究室在1999年併入美國電話電報公司(AT&T)。AT&T於2002年中止了此研究室的運作,並把VNC以GPL釋出。

因為它是免費的,以及可用於數量龐大的不同作業系統,它的簡單,可靠,和回溯相容性,使之進化成為最為廣泛使用的遠端控制軟體,多平台的支援對網路管理員是十分重要的,他使網路管理員可以使用一種工具管理幾乎所有系統。

原來的AT&T版本已經不再使用,因為更多有重大改善的分支版本已經出現,像是RealVNC,VNC tight和UltraVNC,他們具有全面的回溯相容。至少對於基本的遠端控制功能而言。Real VNC是當前最活躍和強大的主流應用。

VNC對於簡單的遠端控制幾乎完美,但是缺少對於大機構的桌面幫助功能,主要是記錄檔記錄和安全功能沒有足以達到此目的。VNC為遠端工作人員或受客戶機也沒有做好準備,因為目前還沒有支援遠端應用程式的本地列印。

因為VNC本來是開發用在區域網路的環境,因此用在網際網路上存在安全問題,當您計劃在遠端位置存取遠端PC,你應該考慮一個專用的數據機或ISDN的撥號連線,VPN隧道,所有使用SSL或包裹VNC通訊。

參與VNC開發的人員有:

  • Tristan Richardson(發明者)
  • Andy Harter(專案經理)
  • Quentin Stafford-Fraser
  • James Weatherall
  • Ken Wood
  • Andy Hopper
  • Charles McLachlan
  • Paul Webster

2002年研究室中止運作之後,部份團隊中的成員另起爐灶開發出RealVNC

原理[編輯]

VNC系統由用戶端,伺服端和一個協定組成

VNC的伺服端目的是分享其所執行機器的螢幕,伺服端被動的允許用戶端控制它。VNC用戶端(或Viewer)觀察控制伺服端,與伺服端互動。VNC協定Protocol(RFB)是一個簡單的協定,傳送伺服端的原始圖像到用戶端(一個X,Y位置上的正方形的點陣資料),用戶端傳送事件訊息到伺服端。

伺服器傳送小方塊的影格快取給用戶端,在最簡單的情況,VNC協定使用大量的頻寬,因此各種各樣的方法被發明出來減少通訊的開支,舉例來說,有各種各樣的編碼方法來決定最有效率的方法來傳送這些點陣方塊)

協定允許用戶端和伺服端去協定哪種編碼會被使用,最簡單的編碼,被大多數用戶端和伺服端所支援的是,從左到右的像素掃描資料的原始編碼,當原始的滿屏被傳送後,只傳送變化的方塊區域。這種編碼在幁間只有小部分螢幕變化的情況下工作的非常好(像是滑鼠鍵在桌面移動的情況,或在光標處敲擊文字),不過如果大量的像素同時變化頻寬將會增加的非常高,像是拖動一個窗口或觀看全螢幕錄影。

VNC預設使用TCP埠5900至5906,而JAVA的VNC用戶端使用5800至5806。一個伺服端可以在5500口用「監聽模式」連線一個用戶端,使用監聽模式的一個好處是伺服端不需要設定防火牆。

UNIX上的VNC稱為xvnc,同時扮演兩種角色,對X視窗系統的應用程式來說它是X server,對於VNC用戶端來說它是VNC伺服程式。

安全性[編輯]

VNC並非是安全的協定,雖然VNC伺服程式需設定密碼才可接受外來連線,且VNC用戶端與VNC伺服程式之間的密碼傳輸經過加密,但仍可被輕易的攔截到並使用暴力搜尋法破解。不過VNC可設計以SSHVPN傳輸,以增加安全性。

有些VNC軟體,如UltraVNC,更進一步支援Active DirectoryNTLM的帳號密碼認證。

VNC軟體[編輯]

由於VNC以GPL授權,衍生出了幾個VNC軟體:

  • RealVNC:由VNC團隊部份成員開發,分為全功能商業版及免費版。
  • TightVNC:強調節省頻寬使用。
  • UltraVNC:加入了TightVNC的部份程式及加強效能的圖型對映驅動程式,並結合Active Directory及NTLM的帳號密碼認證,但僅有Windows版本。
  • Vine Viewer:MacOSX的VNC用戶端。

這些軟體各有所長,例如UltraVNC支援檔案傳輸以及全螢幕模式。而這些軟體間大多遵循基本的VNC協定,因此大多可互通使用。

另見[編輯]

  • 遠端桌面,即RDP(Windows的遠端操作軟體)
  • Xdmcp(基於X Window系統的遠端操作)

外部連結[編輯]