What is VNC?

VNC stands for Virtual Network Computing. It lets you view and control one computer’s desktop from another computer. The VNC server runs on the computer you want to reach, and the VNC viewer runs on the computer you are using. This page explains the idea, the protocol behind it, and the parts you will meet in practice.

If you have ever needed to fix a server in another room, help a relative with their laptop, or reach a Raspberry Pi that has no monitor, you have the problem VNC was built to solve: being in front of a computer you are not in front of.

The idea in one paragraph

A program called a VNC server runs on the computer you want to reach. A program called a VNC viewer (or client) runs on the computer in your hands. The server shares an image of its screen, the framebuffer, and the viewer sends back your keyboard and mouse input. To the remote machine, your clicks look local. To you, the remote desktop is just a window.

Two machines, one concrete example. A Raspberry Pi in another room hosts the VNC server because it is the computer whose screen you want to reach. The laptop in your hands runs the VNC viewer because it displays that Pi desktop and sends your clicks and typing back to it.
Viewer and server connection A viewer connects to a VNC server over RFB on port 5900. viewer (your laptop) RFB screen and input server (the Pi)

The protocol: RFB

Every VNC tool speaks the Remote Framebuffer protocol, RFB, published as RFC 6143. RFB works at the framebuffer level, the raw pixels of the screen, which is what makes VNC platform-independent: a viewer on Windows can control a server on Linux, macOS, or a bare single-board computer, because pixels are pixels everywhere.

rfb handshake · simplified
viewer → server   open TCP connection (default port 5900)
server → viewer   RFB 003.008          protocol version
viewer → server   RFB 003.008          agree version
server ↔ viewer   security-type negotiation (VNC auth, ...)
server → viewer   framebuffer size, pixel format, desktop name
viewer → server   FramebufferUpdateRequest
server → viewer   FramebufferUpdate (only the changed rectangles)

RFB delivers framebuffer updates in rectangles of pixel data that the viewer adds to its framebuffer (RFC 6143 section 7.6.1). For more detail, read The RFB protocol explained.

The parts you will meet

Term What it is
VNC server Runs on the machine being controlled. Shares the screen and applies your input.
VNC viewer Runs on the machine you are sitting at. Shows the remote screen, forwards input.
Display number Display :1 means port 5901 (port 5900 + display number). Server N typically listens on port 5900+N.
Encodings Screen-update compression schemes include Raw, Hextile, and ZRLE, plus extensions such as Tight.
Password / authentication RFB specifies VNC Authentication. In TigerVNC v1.16.2, VeNCrypt security types are added; x11vnc 0.9.17 includes a built-in -ssl mode.

One protocol, many implementations

RealVNC Connect is a commercial VNC implementation from the team that created VNC. After the Cambridge lab closed in 2002, members of the original team founded RealVNC to continue the technology commercially.

VNC’s open-source release in 1998 also gave the technology a life beyond the lab. Today’s open-source implementations include noVNC, TigerVNC, UltraVNC and x11vnc. TightVNC offers both open-source and commercial licensing. Explore Open Source VNC for the projects, or read the history of VNC for their background.

Current implementations include:

How VNC differs from RDP

VNC uses the Remote Framebuffer protocol, RFB, published as RFC 6143. It works at the framebuffer level: the server sends rectangles of screen pixels, and the viewer returns keyboard and pointer input. This platform-independent model lets viewers and servers run on different operating systems.

RDP is Microsoft’s remote desktop protocol. It can send drawing commands and other display information. Its Windows session model includes RD Session Host, which gives each user an isolated session on Windows Server 2025, 2022, 2019 and 2016. VNC can share an existing display or provide a virtual desktop, depending on the server implementation.

A VNC viewer connects to the listening address and port of a VNC server. RealVNC Connect offers cloud connectivity without firewall or router reconfiguration; direct connections are available on some plans; see RealVNC’s plan comparison.

Read VNC vs RDP for the display and session comparison, or The RFB protocol explained for the protocol details.

For business remote access, explore RealVNC Connect.

Is VNC secure?

During connection setup, RFB negotiates a security type (RFC 6143 section 7.1.2). Classic VNC Authentication relies on a DES-based challenge-response. The password is truncated to eight characters, or padded with nulls, to form the DES key (RFC 6143 section 7.2.2). After connection, RFB on its own does not protect against observation or tampering (RFC 6143 section 9). Read Security and remote access best practices before deploying anything.

TigerVNC’s Xvnc gives applications a separate virtual X display that they treat as a normal screen (TigerVNC v1.16.2 Xvnc manual). With TigerVNC v1.16.2, x0vncserver shares an existing X server; x11vnc 0.9.17 accepts connections to existing X11 displays (TigerVNC v1.16.2 x0vncserver manual; x11vnc 0.9.17 manual). On X11, those are two session types: a virtual display, or a share of an existing display. Whether other people can see or join the remote desktop depends on the session type; read session visibility and consent before choosing a setup.

Invited and unsolicited access are different. Invited access starts because you asked a known person to join a session for a specific task. Unsolicited access starts when a caller or message asks you to install a viewer, share a code, or approve control; that is the common remote-access scam pattern. Verify the person independently and follow the session visibility rules.
Where to next? New to VNC: continue to the history for the story, or jump straight to choosing a tool. Stuck on something: the community’s Using VNC Technology group is where setup questions live.

Sources accurate as of 30 September 2026.

Open-source VNC suits personal projects and home labs. When your business depends on remote access, RealVNC Connect adds end-to-end encryption, centralised management and commercial support from the team that created VNC.

community

Discuss this in the community

Using VNC Technology group

last active 2 Sep 2026, 11:07