Re: Recommended way to manually add an undiscovered IPP printer in CUPS 3.x
Alexander Pevzner <[email protected]> Sun, 2 Aug 2026 01:46:54 +0300
| Newsgroups | dev.linux.lists.printing-architecture |
|---|---|
| Message-ID | <[email protected]> |
Till,
I think this is a bad idea for users to disable DNS-SD. It breaks not
only printing, but driverless scanning as well.
Providing user a method to somehow workaround disabled DNS-SD just
creates a wrong illusion that we somehow support this mode of operation.
That said, adding driverless printer manually still a useful option in
case the printer is connected to the non-local LAN segment.
At this case it doesn't make a lot of sense to probe for the ipp-usb
managed printers (which, BTW, may have assigned ports not only 60000 and
60001, but any subsequent port as well),
Regarding normal hardware printers, are there really printers out of
existence, that can respond IPP requests on alternative ports but
doesn't respond on a standard port 631? If not, there is not a lot of
sense to probe ports 8000, 8001 etc.
On 8/1/26 10:50 PM, Till Kamppeter wrote:
> Abdelrahman,
>
> If there is no mDNS/DNS-SD active you can do:
>
> 1. Put an option into the "Add Printer" part where the user only enters
> the IP (or host name) of the printer. It could then try get-printer-
> attributes on
> - ipps://IP:443/
> - ipps://IP:631/
> - ipp://IP:631/
> - ipps://IP:8000/
> - ipp://IP:8000/
> - ipps://IP:8001/
> - ipp://IP:8001/
> - ...
>
> Test 1 and 3 are for network printers, 2 and 3 for remote CUPS servers,
> 4+ for remote Printer Applications.
>
> 2. Also test
> - ipp://localhost:60000/
> - ipp://localhost:60001/
> - ...
> - ipps://localhost:8000/
> - ipp://localhost:8000/
> - ipps://localhost:8001/
> - ipp://localhost:8001/
> - ...
>
> either automatically in the main view or by button(s) in "Add Printer".
> This is for local IPP-over-USB printers and local Printer Applications.
>
> I only do not know how to keep the found printers with CUPS 3.x.
>
>
> Michael,
>
> if discovering a printer by the above tests using the method you have
> described, one creates a queue with ipp: or ipps: and "-m everywhere"
> under CUPS 2.x.
>
> But how to proceed under CUPS 3.x?
>
> If I have only the local server, it is stateless, it only uses temporary
> queues. How do I, in case of not using mDNS/DNS-SD, tell my discoveries/
> manual IP selections to the local server so that it sticks with them? Or
> am I REQUIRED to use mDNS/DNS-SD when I have a system with only the
> local server of CUPS 3.x as print environment?
>
> Or do I have to use the sharing server when I just want to print locally
> but not use mDNS/DNS-SD? Does the sharing server has a config file for
> holding such printers?
>
> Till
>
>
> On 8/1/26 19:16, Michael Sweet wrote:
>> Abdelrahman,
>>
>> For CUPS 2.x you'll use the "everywhere" model ("ppd-name" attribute
>> passed with 'everywhere' value) with an "ipp:" or "ipps:" device URI.
>> If the user doesn't have the full URI (typically "ipps://hostname/ipp/
>> print" these days) then you can send a Get-Printer-Attributes request
>> to the "/" resource to try to get back the correct URI for the printer
>> (returned in the "printer-uri-supported" attribute).
>>
>>
>>> On Aug 1, 2026, at 12:44 PM, AbdElRahman Khalifa
>>> <[email protected]> wrote:
>>>
>>> Hi everyone,
>>>
>>> I'm working on the COSMIC printer setup application for CUPS 3.x.
>>>
>>> I have a question about driverless IPP printers that are not
>>> automatically discovered, for example, when DNS-SD/mDNS is disabled.
>>>
>>> What is the recommended way for a desktop printer setup application to
>>> allow users to add such a printer manually?
>>>
>>> I'm looking for the intended approach in the CUPS 3.x architecture.
>>>
>>> Thanks,
>>> Abdelrahman Khalifa
>>>
>>
>> ________________________
>> Michael Sweet
>>
>>
>
>
--
Wishes, Alexander Pevzner ([email protected])