What is VNC?
VNC (virtual network computing) is a remote desktop (opens in new tab)-sharing system you can use to control another computer in a different location. VNC-based remote desktop tools are lightweight and versatile, making them some of the best remote desktop software (opens in new tab) available today, and are often free too, ranking among the best free remote desktop software (opens in new tab) platforms.
What does VNC do?
- Enables you to remotely control another computer (known as the server)
- Displays the remote computer’s desktop on your screen
- Transmits your mouse and keyboard functions to the remote computer
- Uses a server program for the machine to be controlled and a client/viewer program for the controlling device
- Runs on a wide range of operating systems
- Is the basis for many remote desktop applications, though not all remote desktop programs use VNC
How departments can use VNC
IT support can use VNC to troubleshoot issues remotely. VNC’s most common use is to make quick changes on a remote computer through a convenient, familiar interface. For IT support teams, it’s a big benefit to be able to troubleshoot an employee’s computer remotely.
When new software installations and updates are rolled out that would typically require an IT support technician to move physically from machine to machine making changes, VNC allows them to perform all the updates remotely from the computer on their own desk.
Web development teams
Web development teams can use VNC to remotely access web servers and cloud-hosted virtual machines. When your business has websites and applications hosted on the cloud, it can sometimes be challenging to update and administer them because the files are all stored on remote servers.
When you need to make significant changes to a cloud-hosted server (opens in new tab) or dedicated server (opens in new tab), using VNC can be a convenient way to work on the server. It’s intuitive to work in a desktop environment, making changes to the server using the graphical interface of the operating system you are used to.
Call center managers
Using VNC can be a quick way to display data on multiple screens for the whole sales team to see. One computer generates and displays statistics on KPIs (key performance indicators) such as call volume, queue length, and wait times. The screens throughout the office connect to this computer and mirror its display, keeping everyone informed of the current call center status.
This is a relatively inexpensive and convenient way to roll out digital signage across the floor.
The remote desktop features of VNC can come in handy for any user that needs to remotely access a computer. For example, a software developer working from home can use VNC to access their office computer to run applications there, or get files that they need.
Because VNC can run on many platforms, it can be useful for people working in a cross-platform environment. For instance, you can sit in front of your macOS computer, yet use VNC to control your Windows computer. This way, they can run Windows applications that aren’t available for macOS.
Features and benefits of VNC
VNC uses a lightweight protocol
VNC uses a robust but simple protocol called the RFB (remote framebuffer) protocol. It transports images and peripheral inputs back and forth between the server (the computer being remotely accessed) and the client (the device used locally to connect to the remote computer). Because VNC doesn’t use many resources like CPU and memory, it can be run on low-powered hardware.
VNC is practically platform-independent
The RFB protocol doesn’t need to know much about the operating system on which it is running. All it needs to be able to do is send mouse and keyboard data from the client to the server, and image data from the server to the client. This means that writing VNC server and client software for new operating systems is relatively easy, which is why VNC is so ubiquitous. You’ll find VNC software able to run on just about every popular platform, including mobile devices like Android and iOS and small-factor devices like the Raspberry Pi.
VNC can be used to share screens between users
You can set VNC to keep the local user logged in when a remote user connects to their computer. In this way, control of the computer can be shared between both users. This can be useful in employee training situations. It also means VNC can be used as a customer support tool, where customers can see exactly what the remote technician is doing on their computer.
VNC can be used to share different parts of the screen with different users
VNC, by default, listens on a single port and shares the entire screen to anyone who connects to that port and successfully authenticates themselves. But you can set up VNC to listen on multiple ports, and share different parts of the screen on each port. For an example of where this could be useful, we can again consider a call center floor. Each of the LCDs on the floor can connect to different VNC ports on the server. Therefore, each display can show different data from each other, even when only one VNC server is used.
VNC allows for cross-platform use
VNC’s simple protocol means it works on lots of platforms. Though some remote desktop solutions are more responsive than VNC-based remote desktop solutions because they interact more directly with the underlying operating system, VNC-based remote desktop tools can be used to connect between different platforms. This makes them an excellent option if you work with Windows, macOS, Linux, Android, iOS, and other operating systems daily.
How much does VNC cost?
Some paid solutions that use VNC exist. These usually extend the features of VNC by adding built-in encryption, better user authentication, or cloud connectivity. VNC Connect (opens in new tab) from RealVNC, for instance, adds all these useful features. It starts at $3.39 a month per device.
How do I set up VNC?
VNC solutions consist of two parts—the server and the client/viewer. Install the server on the computer you want to connect remotely to. Install the client/viewer on the device(s) you want to connect from.
VNC, at its core, is a relatively simple protocol. So, you will typically need to enter the IP address of the server into the client/viewer to be able to connect to it. This can be inconvenient if your network uses DHCP (so IP addresses are often changing), or you’re attempting to connect to a computer that’s on another network.
Workarounds for these problems exist, but you should be aware of these potential snags before choosing a VNC-based remote desktop tool for your business.
Is VNC secure?
VNC is a protocol that’s over 20 years old, and it wasn’t designed with security as a chief concern. VNC passwords are sent encrypted, but the encryption protocol used is weak and could potentially be cracked. All session data is sent in an unencrypted format, too.
Again, workarounds exist for these shortcomings. For instance, VNC can be tunneled through an SSH connection, or you can use a VPN (opens in new tab). Some VNC solutions, such as UltraVPN (opens in new tab) and VPN Connect (opens in new tab), include their own encryption, essentially solving this problem.
Does VNC perform well?
VNC’s performance has pros and cons. At its heart, it works through a simple mechanism where any changes to pixels on the server are relayed to the client. The protocol needs to know very little about the underlying operating system being used, which makes VNC easy to port to new operating systems. It also makes the program lightweight, and it uses few resources on the server.
For basic admin tasks, VNC works well. But the simplicity of the protocol has its downside. When the server has a lot of data changing on the screen at a time, the amount of data sent across the network is increased, and latency gets worse. For instance, using VNC to watch a video remotely results in excessive screen tearing, and the interface can feel unresponsive.
- VNC is a remote desktop-sharing tool used extensively in IT settings
- You can use VNC-based remote desktop tools to remotely view and control a desktop
- VNC servers and clients exist for hundreds of operating systems and platforms
- VNC, on its own, isn’t very secure; you should take steps to secure your connections, or choose a solution that includes built-in encryption
- It can be challenging to set up VNC to work across networks; commercial solutions like VNC Connect add cloud connectivity that makes setup much easier
Further reading on remote desktops
VNC is used by many of the best remote desktop solutions (opens in new tab), but providers like TeamViewer (opens in new tab) and AnyDesk (opens in new tab) use their own protocols, such as RDP (opens in new tab) and XRDP (opens in new tab), that offer better picture quality and lower latency. It's also one option for connecting to Linux: we outlined our top services that offer the best remote desktop for Linux (opens in new tab), and explain how to remote desktop into Ubuntu (opens in new tab) in our step-by-step guide.
Finally, you might want to learn how to go about using remote desktop software on either Microsoft or Apple OSs. Follow our step-by-step guides outlining how to use remote desktop on Mac (opens in new tab), how to use remote desktop on Windows 10 (opens in new tab), and how to remote desktop from Mac to Windows (opens in new tab).