Cups not advertising printers

Bill Davidsen davidsen at tmr.com
Mon Apr 12 18:08:37 UTC 2010


Aaron Konstam wrote:
> On Mon, 2010-04-05 at 21:29 +0930, Tim wrote: 
>> On Sat, 2010-04-03 at 16:07 -0500, Aaron Konstam wrote:
>>> To use cups to serve printers to clients in a different LAN in
>>> the /etc/cups/client.conf file you need to have a line:
>>> ServerName 70.238.70.20
>>>  
>>> where in this case 70.238.70.20 is the address of the server.
>>> Note: 70.238.70.25 is not address of my cups server.
>> Unless CUPS has changed how it works, that's not what's going to happen,
>> or Aaron has described things not very clearly.
>>
> What I descibed above ias exactly what will happen if the indicated line
> is placed in thew client.conf file. 
>> Usually, when all is well, CUPS running on a machine will automatically
>> find other available (CUPS) print servers by itself, and you'll be able
>> to print to all the printers it finds that way (local ones, plus the
>> ones from the other CUPS servers that it finds).
>>
> Now we have a historical problem. The above is not how cups worked when
> I first started using it. But after several embarrassing (for me)
> discussions with Tim Waugh I realized that cups has changed since I
> first used it. However,  Tim's explanation begs the question of what
> "available"' means. When I used this at the university where I was a
> Linux administrator there were probably tens of servers on different
> LANs around the university. Our clients did not discover any of he
> printers on different LANs. His statement is clearly not true.
> 
>> However, you can put an address into the client.conf file, and *this*
>> CUPS server will now work with the server address you entered, instead
>> of finding other servers.  You can now print, on this machine, to the
>> printers /that/ server provides (with /that/ being the address you put
>> into the client.conf file.  (The opposite of what Aaron appears to be
>> describing.)
> It is exactly what I described but I will admit I did not emphasize that
> the client.conf file which is changed is on the client not the server.
> That seemed obvious to me but it probably wasn't. 
>> You can do that if you want to force a configuration, like only using
>> one particular print server, and set of printers, even if you could
>> access other ones (such as making it use the nearest printer in the
>> office, instead of any printer in the LAN, which might be upstairs and
>> around the corner).  Or to print to remote services that aren't
>> advertised as being available, although they are accessible (where they
>> wanted manual configuration, so they're only used by the people who know
>> about them).  Or to print to servers that aren't automatically
>> discovered, thanks to how your network is set up (they're not "hidden"
>> on purpose, but complicated networking arrangements has *broken* the way
>> automatically discovering them is supposed to work).
>>
>> But putting an address in your client.conf file doesn't make /this/ CUPS
>> server serve its printers to the remote LAN.  There's a big hint in that
>> this is the CLIENT configuration file.  The client.conf file configures
>> how this CUPS works as a client, the cupsd.conf file configures how it
>> works as a service (daemon).  If you want to make this CUPS instance
>> available to remote computers, you need to play with its cupsd.conf
>> file, instead.
>>
>> Usually, the client.conf file is empty, so that CUPS does it's usual
>> automatic discovery of printers.
>>
I understood the client file to force "go ask this server" so I guess it was not 
an issue. In any case, after an upgrade and reboot the service was advertised, 
so short of stopping the ads and breaking my printers on many machines I'll take 
it as one of those things.

-- 
Bill Davidsen <davidsen at tmr.com>
   "We have more to fear from the bungling of the incompetent than from
the machinations of the wicked."  - from Slashdot


More information about the users mailing list