Hoofdindex » Servers » TechTalk » VNC en RDP
Webservers en meer
TechTalk
VNC & RDP
Het gebeurt vaak dat je toegang nodig hebt tot een tweede computer, bijvoorbeeld de computer die thuis staat opgesteld omdat je een belangrijke brief nodig hebt (terwijl je op het werk bent). Of om een server te besturen (in mijn geval de server die de verwarming stuurt en die in de kelder staat opgesteld).
Daarvoor zijn twee programma's beschikbaar: RDP (remote desktop protocol) en VNC (virtual network computer). Hoewel het resultaat bijna identiek is, zijn er enorme verschillen tussen beide programma's. Raadpleeg ook deze pagina over windows utilities.
-

-

Remote Desktop Protocol

RDP maakt deel uit van het operating system van server-versies van windows (2000 server, XP pro). Deze windows versies ondersteunen het begrip "multiple users" en gaan daar zeer ver in. Het is mogelijk in te loggen op de server via ethernet, en een eigen desktop, muis en toetsenbord te krijgen. De users zijn volledig onafhankelijk van elkaar (iedere gebruiker heeft een eigen desktop, keyboard en mouse). Op de server kan je aan de desktop niet zien of een andere gebruiker ingelogd is.

Een groot voordeel van RDP is dat het ingebakken zit in windows zelf, waardoor de bediening heel soepel gebeurt. Je merkt vaak niet dat je een computer op afstand aan het bedienen bent (behalve als er een afbeelding getoont moet worden). Ook kan je de lokale bronnen (de computer waarop je nu zit) overzetten naar de server (de bediende computer) zodat het copiëren van bestanden heel eenvoudig is. De drives B tot N op “MD” zitten om mijn lokale computer, en ze zijn op de server beschikbaar terwijl ik ingelogd ben.

Er zijn RDP clients beschikbaar voor Linux. Deze bieden nagenoeg dezelfde functionaliteiten als de windows versie, de lokale bestanden zijn hierbij ook beschikbaar op de server. Op de tweede printscreen merk je goed de 'root' (Linux werkt niet met drive letters). De ijzeren gordijn tussen Linux en windows bestaat al lang niet meer!

RDP moet je op de server inschakelen en werkt standaard op poort 3389. Deze poort moet je om veiligheidsredenen wijzigen als je de toegang vanaf de buitenwereld hebt ingeschakeld (router geconfigureerd om RDP door te laten). De listening poort wijzigen doe je in de registry van de server:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TerminalServer\WinStations\RDP-Tcp
Data Type: DWORD
Value Name: PortNumber
Value: 12345

De waarde 12345 is hier als voorbeeld gegeven. Je moet natuurlijk een poortnummer kiezen dat niet in gebruik is door andere programma's. Om de nieuwe poort aktief te maken moet je de server herstarten.
Indien je een router gebruikt moet je deze poort doorsturen naar de computer waarop RDP draait.

RDP werkt in twee modes:

  • administrative mode: dit is de standaard-modus; de bedoeling van RDP is administratieve taken op de server uit te voeren. Maximaal 3 gebruikers kunnen simultaan toegang krijgen tot de server.
  • application mode: de bedoeling is dat de server gebruikt wordt om één programma te draaien voor verschillende gebruikers. Het voordeel is dat het programma op één computer gecentraliseerd staat (bijvoorbeeld als je slechts één software-licentie hebt). Hier is het aantal gebruikers niet beperkt, maar verder heeft dit modus geen voordelen ten opzichte van de administratieve modus.


De RDP server is standaard ingebakken in de windows server versies, maar gelukkig ook in windows XP Pro. Op zich is dat één van de belangrijkste redenen om voor XP te kiezen. De client is beschikbaar als standaardprogramma (“toegang tot extern bureaublad”) bij de meest recente vindows versies (vanaf XP), maar je kan ook een vieuwer downloaden (ook beschikbaar voor windows 98 en zelfs voor mac computers). Je kan de connectieparameters (server, poort, user account) opslaan, dan moet je ze niet iedere keer ingeven.

Ik ben in het algemeen geen fan van microsoft (cfr. Exchange), maar ik moet zeggen dat het bedrijf hier een heel goed programma heeft!

Virtual Network Computer

VNC is een programma dat je toegang geeft tot het desktop van de server (met toetsenbord en muis). In tegenstelling met RDP is er slechts één desktop, namelijk de desktop die lokaal te zien is. VNC is een open protocol, en er zijn daarom verschillende versies beschikbaar, die allemaal een minimale core aan functionaliteit moeten aanbieden. Ik kan je TightVNC aanraden.

Zo kan je bijvoorbeeld met tightVNC bestanden op een eenvoudige manier over brengen zonder FTP te moeten gebruiken. Het is wel een zeer omslachtige manier om bestanden over te brengen (eenmaal je de user interface van echte FTP-programma's gewoon bent). Maar VNC werkt altijd, dit in tegenstelling met FTP dat soms niet door het netwerk van de provider geraakt (FTP is een vreselijk protocol dat meerdere poorten gebruikt).

Een zwaardere server is aangeraden (pentium III), want de desktop wordt real-time gecomprimeerd en doorgestuurd. Aan de client worden mindere zware eisen gesteld, want decompressie gebeurt veel sneller dan compressie. In tegenstelling tot RDP dat een integraal deel van het operating system is en dus zeer efficient met de kernel kan communiceren, moet VNC het stellen met niet-optimale system hooks, waardoor de schermopbouw heelwat trager is. Ook wordt enkel het deel van de desktop dat actief is bijgewerkt (maar VNC kan dit blijkbaar niet altijd goed bijhouden), waardoor je soms rare verschijnselen bekomt. Je kan altijd een desktop refresh aanvragen mochten er teveel verschillen zijn tussen beide desktops.

De VNC server luistert op poort 5900: indien je een router gebruikt moet je deze poort doorsturen naar de computer waarop VNC draait.

Het VNC pakket bestaat uit een vieuwer en server. Op de te besturen computer installeer je de server, op de computer dat je gebruikt om te besturen de client.

Verschillen

  • VNC: toegang tot één desktop in geval van VNC. VNC maakt een verbinding met de desktop van de client computer. VNC staat los van het operating system (het stuurt enkel hetgeen op de desktop te zien is door). VNC maakt een groter gebruik van processorkracht aangezien het niet geoptimaliseerd is op core-niveau (het is een normaal programma). Aangezien het een programma is kan het op alle computers draaien. Maar VNC werkt op alle computersystemen (windows vanaf 98, mac, linux,...)

  • RDP: toegang tot een virtueel desktop. Bij RDP wordt er een virtuele desktop aangemaakt, dat los staat van wat er te zien is op het scherm. Servers kunnen meerdere virtuele desktops aanmaken. Op ieder virtueel desktop draaien de programma's van de betreffende gebruiker. RDP wordt op operating system niveau geïmplementeerd en geoptimaliseerd en belast de server slechts in beperkte mate. Er komen regelmatig nieuwe functionaliteiten bij (sharen van directories en printers), maar deze werken niet in een heterogene omgeving (verschillende windows versies bij server en client: printers sharen lukt niet).

  • VNC: beveiligde verbinding. VNC werd opgezet om een beveiligde verbinding aan te gaan met een computer over het internet. Beveiliging zit er standaard in.

  • VNC: open protocol. Terwijl RDP "eigendom" is van microsoft, is het VNC protocol open source. Iedereen kan dus verbeteringen aanbrengen aan de core van VNC (enkel de minimale funkties moeten voorzien worden). Programmaschrijvers hebben al heel snel verbeteringen aangebracht aan de basis-VNC, met bijvoorbeeld de mogelijkheid om bestanden over te sturen.

  • VNC: schermopbouw. Aangezien VNC het scherm overneemt, is het aangeraden dat de schermresolutie van de server kleiner gekozen wordt dan de client, anders moet je op de client scrollen. Als beide computers dezelfde schermresolutie hebben kan je VNC in full modus gebruiken. De menus zijn dan enkel nog bereikbaar door op locale taskbar te selecteren (CTRL-ESC ESC) en rechts klikken op de taskbar.
    Bij RDP bekom je een nieuwe, onafhankelijke desktop, waarvan je de resolutie vrij kan instellen.

Publicités - Reklame

-