Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I would like to print from an iPad2 to the office printer running on CUPS. After following a couple of cookbook style cheat sheets, printing from the iPad still does not work. the iPad sees the printer entry I made and offers it as an option, but nothing appears on the queue and there is no printer output. Local print jobs on the server work, so CUPS recognizes and works with the printer. Avahi-discover lists the printer and will dump the associated XML file. The server is Ubuntu 10.10.

The procedure used is outlined here.

This page had a simpler recipe.

Any tips appreciated.


Today, I disabled the firewall on the server. Now this message shows up in the CUPS error_log repeatedly when trying to print:

E [13/Jul/2011:10:17:15 -0400] Request from "192.168.x.y" using invalid Host: field "server.local"

The name of the server is server.local, which can be reached using that name. The address "192.168.x.y" is that of the iPad.

share|improve this question
Is this actually about Linux? I'm having trouble following it, but I think you're trying to change the iPad configuration, which is an iOS problem. If that's what you're doing you might be better served on Ask Different -- we can migrate it there if you like – Michael Mrozek Jul 12 '11 at 17:29
No, it is a Linux issue, CUPS is running on a Linux server. The iPad uses AirPrint (handled by avahi on the Linux side) to find a printer. There is no more to it on the iPad side. The Linux side is having problems submitting the job to CUPS. That is the crux right now. – gunther Jul 12 '11 at 17:49
Does anything appear in the logs on the Linux machine when you try to print? (Look at files that get modified in /var/log and /var/log/cups; post every log message that's produced at the time of your attempt.) – Gilles Jul 12 '11 at 22:16

(Posting an answer that was edited into the question)

This is a bug in CUPS. The bug report lists several workarounds:

  • Add ServerAlias * to cupsd.conf
  • Add ServerAlias servername to cupsd.conf
  • Add HostNameLookups On to cupsd.conf
share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.