Die gute Nachricht: Du brauchst keinen neuen Drucker. Ein Raspberry Pi (oder der Homeserver, der bei dir sowieso schon läuft) macht mit der freien Druckserver-Software CUPS aus praktisch jedem Drucker ein AirPrint-Gerät. Die Einrichtung dauert eine knappe halbe Stunde, kostet keinen Cent und läuft danach unsichtbar im Hintergrund. In dieser Anleitung gehst du Schritt für Schritt vom nackten Raspberry Pi bis zum ersten Ausdruck vom iPhone, inklusive Docker-Variante und einer Liste der typischen Stolperfallen.
Das erwartet dich in diesem Artikel
1. Wie AirPrint technisch funktioniert
AirPrint ist keine Apple-Magie, sondern die Kombination aus drei offenen Bausteinen. Erstens das Internet Printing Protocol (IPP), über das der eigentliche Druckauftrag auf Port 631 läuft. Zweitens Bonjour, Apples Name für mDNS/DNS-SD: Darüber ruft ein Drucker auf Port 5353 ins Netzwerk, dass es ihn gibt und was er kann. Und drittens ein Rasterformat namens Apple Raster, das jedes iOS-Gerät erzeugen kann; in den Bonjour-Ankündigungen taucht es unter dem Kürzel URF auf.
Dein iPhone zeigt also genau die Drucker an, die sich per Bonjour melden, IPP sprechen und URF-Daten annehmen. Genau hier setzt CUPS an: Es nimmt den Auftrag vom iPhone entgegen, wandelt ihn mit seinen Filtern in die Sprache um, die dein alter Drucker versteht, und kündigt jeden freigegebenen Drucker automatisch korrekt im Netzwerk an. Für dein iPhone sieht der alte Drucker damit aus wie ein natives AirPrint-Gerät.
2. Das brauchst du
- Einen Raspberry Pi, vom Zero W aufwärts reicht jedes Modell, oder einen ohnehin laufenden Linux-Homeserver
- Deinen Drucker, per USB am Pi angeschlossen oder im Netzwerk erreichbar
- iPhone oder iPad im selben Netz wie der Pi (wichtig, dazu unten mehr)
- Raspberry Pi OS oder ein anderes Debian-basiertes System mit SSH-Zugang
3. Die Einrichtung Schritt für Schritt
Schritt 1: CUPS installieren
Verbinde dich per SSH mit dem Pi, bring das System auf den aktuellen Stand und installiere CUPS samt Filterpaket:
sudo apt update && sudo apt full-upgrade -y
sudo apt install -y cups cups-filters
Avahi, der Dienst für die Bonjour-Ankündigungen, wird dabei als Abhängigkeit direkt mitinstalliert. Damit dein Benutzer Drucker verwalten darf, kommt er noch in die Gruppe lpadmin:
sudo usermod -aG lpadmin $USER
Danach einmal ab- und wieder anmelden, damit die neue Gruppenmitgliedschaft greift.
Schritt 2: CUPS im Netzwerk erreichbar machen
Frisch installiert lauscht CUPS nur auf dem Pi selbst. Drei Schalter öffnen die Weboberfläche für dein Heimnetz, erlauben Druckaufträge aus dem Netzwerk und aktivieren die Freigabe:
sudo cupsctl --remote-admin --remote-any --share-printers
sudo systemctl restart cups
Ab jetzt erreichst du die Verwaltung im Browser unter https://raspberrypi.local:631, alternativ über die IP-Adresse des Pi. Die Zertifikatswarnung ist normal, CUPS nutzt ein selbstsigniertes Zertifikat, du kannst sie bestätigen.

Schritt 3: Drucker anlegen und testen
Öffne in der Weboberfläche den Reiter Verwaltung und klicke auf Drucker hinzufügen. Als Login nimmst du deinen Pi-Benutzer samt Passwort. Ein per USB angeschlossener Drucker taucht unter Lokale Drucker auf; falls nicht, prüfe mit lsusb, ob der Pi ihn überhaupt sieht. Netzwerkdrucker erscheinen unter Gefundene Netzwerkdrucker.

Bei der Treiberwahl gilt: möglichst exakt das eigene Modell auswählen. Für die großen Hersteller gibt es eigene Pakete zum Nachinstallieren, etwa hplip für HP, printer-driver-escpr für Epson oder printer-driver-splix für ältere Samsung-Laser. Neuere Netzwerkdrucker laufen oft komplett treiberlos über den Eintrag IPP Everywhere.
Profi-Tipp: Drucke am Ende unbedingt eine Testseite über Wartung, Testseite drucken. Die Grundregel lautet: Was CUPS lokal nicht sauber druckt, wird über AirPrint erst recht nichts. Alles, was du hier an Treiberproblemen findest, ersparst du dir später bei der Fehlersuche am iPhone.
Schritt 4: Freigeben, fertig
Setze beim Drucker den Haken „Drucker freigeben“, entweder direkt beim Anlegen oder nachträglich unter Drucker, Verwaltung. Mehr ist nicht nötig: Moderne CUPS-Versionen kündigen jeden freigegebenen Drucker automatisch als AirPrint-Ziel an. Die airprint-generate-Skripte und selbstgebauten Avahi-Servicedateien aus alten Anleitungen kannst du ignorieren, dieser Handgriff ist seit Jahren Geschichte.
Der Test: Öffne auf dem iPhone ein Foto, tippe auf Teilen und dann auf Drucken. Dein alter Drucker steht jetzt in der Liste, als wäre er schon immer ein AirPrint-Gerät gewesen.

4. Die Docker-Variante für den Homeserver
Läuft bei dir ohnehin ein Server mit Docker, brauchst du keinen eigenen Pi. Zwei Dinge entscheiden hier über Erfolg oder Frust: Der Container muss im Host-Netzwerk laufen, weil Bonjour-Pakete aus einem Bridge-Netzwerk nicht bei deinem iPhone ankommen, und ein USB-Drucker muss an den Container durchgereicht werden. Das Grundgerüst in der compose-Datei sieht so aus:
services:
cups:
image: <cups-image> # Debian-Basis mit cups und cups-filters
network_mode: host
devices:
- /dev/bus/usb:/dev/bus/usb
volumes:
- ./cups-config:/etc/cups
restart: unless-stopped
Ob du ein fertiges CUPS-Image aus dem Docker Hub nimmst oder dir aus einem schlanken Debian-Image mit zwei Zeilen ein eigenes baust, ist Geschmackssache. Entscheidend sind das Host-Netzwerk, die USB-Durchreichung und das Volume für die Konfiguration, damit deine eingerichteten Drucker ein Container-Update überleben.
5. Wenn der Drucker nicht auftaucht
- Gäste-WLAN oder Client-Isolation: Viele Router unterbinden im Gäste-WLAN den Kontakt zwischen Geräten. iPhone und Pi müssen im selben, normalen (W)LAN hängen.
- Getrennte Subnetze oder VLANs: mDNS endet an der Subnetzgrenze. Wer sein Smart Home in ein eigenes VLAN gesperrt hat, braucht einen mDNS-Reflector, zum Beispiel die Reflector-Funktion von Avahi.
- Avahi prüfen: systemctl status avahi-daemon muss active (running) zeigen.
- Freigabe prüfen: cupsctl | grep share muss _share_printers=1 liefern, und beim Drucker selbst muss der Freigabe-Haken gesetzt sein.
- Firewall: Läuft auf dem Pi oder Server eine Firewall, müssen TCP 631 und UDP 5353 offen sein.
- Drucker erscheint, druckt aber Zeichensalat: Das ist fast immer der Treiber. Leg den Drucker mit einem anderen PPD neu an, bei Multifunktionsgeräten hilft oft das Herstellerpaket.
- Für alles Übrige: LogLevel debug in /etc/cups/cupsd.conf setzen, CUPS neu starten und /var/log/cups/error_log lesen. Dort steht die Wahrheit.
Fazit
Eine halbe Stunde reicht: CUPS installieren, Drucker anlegen, freigeben, fertig. Der Charme dieser Lösung liegt darin, dass sie auf Hardware läuft, die bei den meisten von uns ohnehin durchläuft. Der Pi, der deine Automatisierungen stemmt, verwaltet den Drucker einfach mit, und der Drucker, der angeblich nicht mehr in die Apple-Welt passt, druckt wieder viele Jahre. Sollte er doch irgendwann sterben, bleibt der Druckserver bestehen: Den Nachfolger legst du in CUPS in fünf Minuten an.