Cups browsing

From Finninday
Revision as of 04:31, 6 August 2012 by Rday (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

I'm trying to understand the basics of cups configuration for printing.

I have a print server that sees three printers and can print to them locally. It seems like client cups instances should be able to easily discover the print server as they are on the same network, but when I use cups admin to find new printers or add a printer, I have to manually construct the proper URL to describe the network shared printer. Surely it can be easier than that.

The cups documentation says that it is. (http://www.cups.org/documentation.php/doc-1.6/sharing.html)

My server is running cups 1.4.4

It looks like the following configuration directives are of interest for the server:

  • Allow

The Allow directive specifies a hostname, IP address, or network that is allowed access to the server. Allow directives are cummulative, so multiple Allow directives can be used to allow access for multiple hosts or networks.

  • BrowseAddress

The BrowseAddress directive specifies an address to send browsing information to. Multiple BrowseAddress directives can be specified to send browsing information to different networks or systems.

The @LOCAL name will broadcast printer information to all local interfaces. The @IF(name) name will broadcast to the named interface.

There is no default browse address.

  • BrowseAllow

The BrowseAllow directive specifies a system or network to accept browse packets from. The default is to accept browse packets from all hosts.

Host and domain name matching require that you enable the HostNameLookups directive.

IP address matching supports exact matches, partial addresses that match networks using netmasks of 255.0.0.0, 255.255.0.0, and 255.255.255.0, or network addresses using the specified netmask or bit count. The /mm notation specifies a CIDR netmask, a shown in Table 1.

The @LOCAL name will allow browse data from all local interfaces. The @IF(name) name will allow browse data from the named interface. In both cases, CUPS only allows data from the network that the interface(s) are configured for - data arriving on the interface from a foreign network will not be allowed.

  • Browsing

The Browsing directive controls whether or not network printer browsing is enabled. The default setting is Yes.

This directive does not enable sharing of local printers by itself; you must also use the BrowseAddress or BrowseProtocols directives to advertise local printers to other systems.

  • Listen

The Listen directive specifies a network address and port to listen for connections. Multiple Listen directives can be provided to listen on multiple addresses.

The Listen directive is similar to the Port directive but allows you to restrict access to specific interfaces or networks.