4

I have (several) non-CUPS IPP printers; however, I cannot for the life of my determine the names/paths/whatever of the print queues. <printer ip>:631/ and <printer ip>:631/printers/ are completely unhelpful or return 404. I have no clue how to print to these printers, but OS X and Windows seem to have no problem automatically discovering the names of the print queues (although they won't expose them to me). On Linux however, (and I have searched and searched), I am at a loss. As soon as I get the names of the print queues, I know exactly how to print. Printing on Linux has become so frustrating to me when my print servers aren't running CUPS.

Rui F Ribeiro
  • 55,929
  • 26
  • 146
  • 227
Isabell Cowan
  • 43
  • 1
  • 5
  • 1
    In case anyone ever comes across this, the actual path to the printer in my case was: http://PrinterServerName/printers/PrinterName/.printer – Dustin Mar 09 '18 at 19:49

2 Answers2

2

IPP printers typically use the following URI to receive any IPP requests (including job submissions with the print-job IPP request):

 ipp://printername/ipp/print
 ipps://printername/ipp/print

Though this exact location is not standardized in the IPP specification, you can normally find out which different URIs are supported, by running the following command:

 ipptool -tv ipp://printername/ipp get-printer-attributes.test

If you do not have ipptool installed, have a look at this ASCIInema asciicast movie, which gives you an easy way to install the "IPP Sample Software" (that includes ipptool) and run it immediately without installation:

asciicast


UPDATE:

Just noticed that the OP found that she had to use the URI http://printservername:80/printers/Printername/.printers. To me this indicates that she is NOT dealing with actual IPP printers, but with a Windows print server, which according to Microsoft is able to handle IPP....

Well, other than that Microsoft's IPP implementation is largely unmaintained and anyway was never working reliably, this is using a non-standard port, a non-standard path and an non-standard "standard": because Windows got stuck on IPP-1.0 which never achieved an officially declared status (it ever remained a 'draft specification'). The first official standard was IPP-1.1...

Kurt Pfeifle
  • 1,401
  • 1
  • 12
  • 15
2

A very simple utility to list all valid IPP URIs in your local network is ippfind, which ships with CUPS.

It cannot become much simpler than just typing

ipptool [ENTER]

in a terminal and see f.e. the following being listed:

ipp://mbp14.papercut-ipv4.local:631/printers/OJ6500
ipp://mbp14.papercut-ipv4.local:631/printers/stkPrinter
ipp://lenjes2.local:8444/ipp/print
ipp://mbp14.papercut-ipv4.local:631/printers/libreoffice-pin-code-drucker
ipp://hp-oj.local:631/ipp/print
[....]

The last line represents an IPP-capable HP printer, the other lines are CUPS queues installed on mbp14 and a virtual IPP printer provided through the ippserver component of the IPP Sample Software running lenjes2.

Kurt Pfeifle
  • 1,401
  • 1
  • 12
  • 15
  • Do you mean `ippfind` or `ipptool`? If I run `ipptool` without arguments, I just get an error message about incorrect usage. When I run `ippfind`, I get an error message that the Bonjour daemon isn't running. – Turion Jun 14 '23 at 07:53