VNC(1) VNC(1)
NAME
vncs, vncv - remote frame buffer server and viewer for
Virtual Network Computing (VNC)
SYNOPSIS
vncs [ -v ] [ -c cert ] [ -d :display ] [ -g widthxheight ]
[ -p pixfmt ] [ -x net ] [ cmd [ args ] ]
vncs -k :display [ -x net ]
vncv [ -acstv ] [ -e encodings ] [ -l charset ] [ -k
keypattern ] host[:n]
DESCRIPTION
VNC is a lightweight protocol for accessing graphical appli-
cations remotely. The protocol allows one or more clients
to connect to a server. While connected, clients display
the frame buffer presented by the server and can send mouse
events, keyboard events, and exchange snarf buffers. The
server persists across viewer sessions, so that the virtual
application can be accessed from various locations as its
owner moves around.
VNC displays have names of the form host:n, where host is
the machine's network name and n is a small integer identi-
fier; display n is served on TCP port 5900+n.
Vncs starts a new virtual frame buffer in memory, simulating
a Plan 9 terminal running cmd args, by default an interac-
tive shell. As viewers connect, each is authenticated using
a (rather breakable) challenge-response protocol using the
user's Inferno/POP password.
The options are:
-c cert start TLS on each viewer connection using the
certificate in the file cert. The corresponding
private key must be loaded into the server's
factotum(4). When serving TLS connections, the
base port is 35729 rather than 5900.
-d :n run on display n ; without this option, the
server searches for an unused display.
-g widthxheight
set the virtual frame buffer to be widthxheight
(default 1024x768) pixels.
-p pixfmt set the virtual frame buffer's internal pixel
Page 1 Plan 9 (printed 11/22/25)
VNC(1) VNC(1)
format to pixfmt (default r5g6b5).
-v print verbose output to standard error.
-x net announce on an alternate network interface.
-A turn off authentication.
The command vncs -k :n kills the VNC server running on dis-
play n.
Vncv provides access to remote display host:n. It resizes
its window to be the smaller of the remote frame buffer size
and the local screen when not using the autoscaling option.
The options are:
-a autoscale remote frame buffer to local screen window
size.
-c when connecting to 8-bit displays, request r4g4b4 pix-
els rather than r3g3b2 pixels. This takes up more
bandwidth but usually gives significantly better match-
ing to the Plan 9 color map.
-e encodings
set the ordered list of allowed frame buffer update
encodings. The default (and full) set is copyrect
corre hextile rre raw mousewarp desktopsize
xdesktopsize. The encodings should be given as a sin-
gle space-separated argument (quoted when using the
shell).
-l charset
sets the character set (see tcs(1)) used by the server
to encode clipboard text. The default is utf-8.
-k keypattern
add keypattern to the pattern used to select a key from
factotum(4).
-s share the display with extant viewers; by default
extant viewers are closed when a new viewer connects.
-t start TLS on the connection.
-v print verbose output to standard error.
SOURCE
/sys/src/cmd/vnc
SEE ALSO
Page 2 Plan 9 (printed 11/22/25)
VNC(1) VNC(1)
http://www.uk.research.att.com/vnc
BUGS
If the remote frame buffer is larger than the local screen,
and autoscaling is disabled, only the upper left corner can
be accessed. Autoscaling is only implemented for raw encod-
ing.
Vncs and vncv encryption is not secure. It's advisable to
tunnel through ssh or some other secure protocol.
Vncv does no verification of the TLS certificate presented
by the server.
Page 3 Plan 9 (printed 11/22/25)