# Setup

Anything that can print to a network thermal printer can print here. Only the address changes: your
printer's host and port instead of a device on the LAN.

Pick the page that matches how your software prints.

| How your software prints | Page |
|---|---|
| It asks for a printer host and port | [POS software](/docs/setup/pos-software) |
| Through a Windows print queue | [Windows print queue](/docs/setup/windows-driver) |
| Through CUPS on Linux or macOS | [CUPS](/docs/setup/linux-cups) |
| With an ESC/POS library | [Printing libraries](/docs/setup/libraries) |
| It opens a socket itself | [Code samples](/docs/setup/code-samples) |

Whichever route you take, the address is the same pair: `virtual-printer.online` and the port shown on
your printer's card. See [Raw TCP port 9100](/docs/start/raw-tcp-port-9100) for what that port is.

## Before you start

New workspaces have the [IP whitelist](/#settings/whitelist) enabled, holding only the address you
created the workspace from. If you are setting up a second machine, add its address first, or its
connections will be reset - see
[Connection refused or reset](/docs/troubleshooting/connection-refused).

## Networks that block the port

Printer ports are non-standard, and plenty of corporate networks allow outbound 80 and 443 only. If a
connection works from home and times out at the office, that is the cause: ask for the port to be
opened, or self-host inside the network.
