September 25, 2023

Change is the end result of all true learning

Set Up CUPS Print Server on Ubuntu (Bonjour, IPP, Samba, AirPrint)

This tutorial will be showing you how to share a printer attached to an Ubuntu computer with Windows, macOS and iOS clients on the same network. CUPS (Common Unix Printing System) is the default printing system on Linux, FreeBSD, and macOS. Your Linux desktop environment may have a dedicated printer configuration utility, but they all use CUPS under the hood.

CUPS printer can be shared on the network using several protocols, including:

  • Bonjour + IPP: Bonjour, also known as mDNS/DNS-SD (multicast DNS/DNS service discovery), allows a computer to find services on the local network. IPP (Internet Printing Protocol) is the transport protocol.
  • SMB: aka Samba, mainly used to share files and printers with Windows clients.
  • AirPrint: Allows iPhone, iPad, and macOS clients to print over Wi-Fi.

Each protocol has its advantages and disadvantages. First, I will show you how to install and configure CUPS. Then we will learn how to share the CUPS printer via the above 3 protocols. I recommend using all 3 methods to share your printer, so users can find an available printer on the local network with minimal effort.