[opensuse] cupsd settings
Hi, I'm trying to print to a remote cups server. The setup should be correct already with one issue left. The printer is always broadcasted with the hostname instead of the ip address of the print server. This hostname cannot get resolved in this network (I know it's bad but no way to change that). All documentation I've found says that I need to set "ServerName" in cupsd.conf to the ip address. But this doesn't work. It's still broadcasting the hostname as part of the printer uri. This is openSUSE 11.3 with cups 1.4.4. Any pointers? Thanks, Wolfgang -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
On 11/29/2010 12:21 AM, Wolfgang Rosenauer wrote:
Hi,
I'm trying to print to a remote cups server.
Umm, how is the printer connected on the remote end? (is it connected to the server via LPT1, USB, etc.. or is it connected to another host (win or Lin), or is it a stand-alone network device?) The setup should be correct
already with one issue left. The printer is always broadcasted with the hostname instead of the ip address of the print server.
That shouldn't matter as long as forward/reverse name resolution is working. This hostname
cannot get resolved in this network (I know it's bad but no way to change that).
This I don't understand? DNS? /etc/hosts? LMHOSTS? WINS? All documentation I've found says that I need to set
"ServerName" in cupsd.conf to the ip address.
You might try setting the name as well as aliases. Example from my box: ServerName nirvana.3111skyline.com ServerAlias nirvana ServerAlias www.3111skyline.com ServerAlias localhost
But this doesn't work. It's still broadcasting the hostname as part of the printer uri.
This is openSUSE 11.3 with cups 1.4.4.
Any pointers?
I know there have been a number of changes to cupsd.conf over the past 2 years, but I don't recall when or what version. The example above comes from cups 1.4.5-1, while on my older cups installs, I don't even set ServerName and they work fine with with all printers, (LPT1, or connected to Win boxes, or standalone network printers). At the office I have 3 printers, none a physically connected to my server, but all work via cups: 18:30 bonza:~> smbclient -U david -L localhost Enter david's password: Domain=[BONZA] OS=[Unix] Server=[Samba 3.3.4-0.1.146-2113-SUSE-SL10.3] Sharename Type Comment --------- ---- ------- <snip> SHARP_AR-M355N_192.168.7.20 Printer SHARP AR-M355N hplj_4200 Printer HP LaserJet 4200 dcr_lj4100n Printer HP LaserJet 4100n The Sharp and 4100n are stand-alone network devices that are just at the end of CAT5 drops, the 4200 is hanging off the parallel port of the secretary WinXP box. The cupsd.conf on the server (older 10.3 box with cups 1.2-12) is completely generic: 18:35 bonza:~> sudo cat /etc/cups/cupsd.conf LogLevel info SystemGroup sys root # Allow remote access Port 631 Listen /var/run/cups/cups.sock # Enable printer sharing and shared printers. Browsing On BrowseOrder allow,deny BrowseAllow @LOCAL BrowseAddress @LOCAL DefaultAuthType Basic <Location /> # Allow shared printing and remote administration... Order allow,deny Allow From @LOCAL </Location> <Location /admin> Encryption Required # Allow remote administration... Order allow,deny Allow From @LOCAL </Location> <Location /admin/conf> AuthType Basic Require user @SYSTEM # Allow remote access to the configuration files... Order allow,deny Allow From @LOCAL </Location> <Policy default> <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job CUPS-Move-Job> Require user @OWNER @SYSTEM Order deny,allow </Limit> <Limit Pause-Printer Resume-Printer Set-Printer-Attributes Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After CUPS-Add-Printer CUPS-Delete-Printer CUPS-Add-Class CUPS-Delete-Class CUPS-Accept-Jobs CUPS-Reject-Jobs CUPS-Set-Default> AuthType Basic Require user @SYSTEM Order deny,allow </Limit> <Limit Cancel-Job CUPS-Authenticate-Job> Require user @OWNER @SYSTEM Order deny,allow </Limit> <Limit All> Order deny,allow </Limit> </Policy> The smb.conf setup is generic as well: [global] <snip> printcap name = cups <snip> [printers] comment = All Printers path = /var/spool/samba ; can be /tmp/<whatever> as well create mask = 0700 guest ok = Yes printable = Yes browseable = No <snip> Have you looked at the setup with the cups interface on the server you are working on? http://servername:631 It has been a while, but IIRC, all I did to get everything working together was to set the hardware up and then use the cups interface (on the server) to add and publish each of the printers. These are just thoughts. Give us a little more specific info on how the printer is connected on the remote end and we will be happy to make more guesses :p -- David C. Rankin, J.D.,P.E. Rankin Law Firm, PLLC 510 Ochiltree Street Nacogdoches, Texas 75961 Telephone: (936) 715-9333 Facsimile: (936) 715-9339 www.rankinlawfirm.com -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
Hi, Am 30.11.2010 01:51, schrieb David C. Rankin:
On 11/29/2010 12:21 AM, Wolfgang Rosenauer wrote:
Hi,
I'm trying to print to a remote cups server.
Umm, how is the printer connected on the remote end? (is it connected to the server via LPT1, USB, etc.. or is it connected to another host (win or Lin), or is it a stand-alone network device?)
It's USB but that shouldn't make a difference. Printing is working fine locally and I isolated the only issue is that the client cannot connect to the hostname because of DNS reasons.
That shouldn't matter as long as forward/reverse name resolution is working.
I know it's not working but it's also not fixable w/o dirty workarounds. That is my home network which has a hardware router responsible for resolving DNS. There is no way to define an internal domain name there. It just has no good concept for internal DNS structures.
This I don't understand? DNS? /etc/hosts? LMHOSTS? WINS?
See above. I know quite a bit about DNS but the possible solutions for that underlying issue are worse for other reasons.
All documentation I've found says that I need to set
"ServerName" in cupsd.conf to the ip address.
You might try setting the name as well as aliases. Example from my box:
ServerName nirvana.3111skyline.com ServerAlias nirvana ServerAlias www.3111skyline.com ServerAlias localhost
Tried now ServerName 192.168.250.1 ServerAlias hygiea Still the broadcast tells the `hostname -f` as printer URI.
Have you looked at the setup with the cups interface on the server you are working on? http://servername:631
Yes, but I see no way to customize the printer URI.
These are just thoughts. Give us a little more specific info on how the printer is connected on the remote end and we will be happy to make more guesses :p
As explained above I only try to workaround the DNS issue in my network. But according to Google and the documentation I found ServerName IP_ADDRESS should just do it which doesn't for me. Wolfgang -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
On 11/30/2010 01:11 AM, Wolfgang Rosenauer wrote:
Hi, I know it's not working but it's also not fixable w/o dirty workarounds. That is my home network which has a hardware router responsible for resolving DNS. There is no way to define an internal domain name there. It just has no good concept for internal DNS structures.
This I don't understand? DNS? /etc/hosts? LMHOSTS? WINS?
See above. I know quite a bit about DNS but the possible solutions for that underlying issue are worse for other reasons.
Wolfgang, Even at home, the first thing I do is get BIND9 setup to accept dynamic updates from dhcpd and go from there. That way if I ever end up with a device like your that needs to be accessed (like playstations, wii's, smartphones, etc..) I can always create a forward and reversion lookup for the device. With your printer, if the clients can't communicate with it, how are they going to be able to print to it? If it is broadcasting it's name, then there has to be a way for the clients to know where in the heck 'name' is on the network. If I was going to stick with the router doing dns and dhcp, then I guess I would try setting the /etc/hosts on Linux boxes and LMHOSTS on the windows boxes in %SystemRoot%\System32\Drivers\Etc You can get the full write up here: http://support.microsoft.com/kb/314108 That way both Linux and Win boxes could take the broadcast name and turn it into an IP. You may also be able to create a printer share specifically for your printer on samba on your Linux box. At least then you would have WINS to help with netbios name resolution.
All documentation I've found says that I need to set
"ServerName" in cupsd.conf to the ip address.
You might try setting the name as well as aliases. Example from my box:
ServerName nirvana.3111skyline.com ServerAlias nirvana ServerAlias www.3111skyline.com ServerAlias localhost
Tried now ServerName 192.168.250.1 ServerAlias hygiea
Still the broadcast tells the `hostname -f` as printer URI.
Have you looked at the setup with the cups interface on the server you are working on? http://servername:631
Yes, but I see no way to customize the printer URI.
These are just thoughts. Give us a little more specific info on how the printer is connected on the remote end and we will be happy to make more guesses :p
As explained above I only try to workaround the DNS issue in my network. But according to Google and the documentation I found ServerName IP_ADDRESS should just do it which doesn't for me.
I'm not sure you are chasing the right rabbit here. The ServerName IP identify the cups server. I'm not familiar with the work-around and may be completely wrong, but the only way I see it making any sense is if you were setting up some type of 'virtual' cups server using the printer IP as the server name. But, I've never heard of doing that before. The good part of it is -- somebody has bound to have done it with your printer before, so I'd hit google a couple more times on 'setup <your model> printer on network' or something similar. Good luck. -- David C. Rankin, J.D.,P.E. Rankin Law Firm, PLLC 510 Ochiltree Street Nacogdoches, Texas 75961 Telephone: (936) 715-9333 Facsimile: (936) 715-9339 www.rankinlawfirm.com -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
Am 30.11.2010 09:31, schrieb David C. Rankin:
On 11/30/2010 01:11 AM, Wolfgang Rosenauer wrote: Even at home, the first thing I do is get BIND9 setup to accept dynamic updates from dhcpd and go from there. That way if I ever end up with a device like your that needs to be accessed (like playstations, wii's, smartphones, etc..) I can always create a forward and reversion lookup for the device.
I don't have a box running all the time besides the router and it should stay that way. So DNS _has_ to be performed from the router. And it actually works for internal hostnames but not for internal FQDN.
With your printer, if the clients can't communicate with it, how are they going to be able to print to it?
Apparently we are not talking the same here. The printer is local to my normal workstation being the cups server. I for sure can talk to my cups server via IP but not via name. So it would be easy for the clients to print if they would know the ip address from the cups broadcast messages.
If it is broadcasting it's name, then there has to be a way for the clients to know where in the heck 'name' is on the network. If I was going to stick with the router doing dns and dhcp, then I guess I would try setting the /etc/hosts on Linux boxes and LMHOSTS on the windows boxes in %SystemRoot%\System32\Drivers\Etc You can get the full write up here: http://support.microsoft.com/kb/314108
And when I leave my local network with my laptop the ip I need to use to access the same machine changes. Not a solution.
All documentation I've found says that I need to set
"ServerName" in cupsd.conf to the ip address.
Still the broadcast tells the `hostname -f` as printer URI.
I'm not sure you are chasing the right rabbit here. The ServerName IP identify the cups server. I'm not familiar with the work-around and may be completely wrong, but the only way I see it making any sense is if you were setting up some type of 'virtual' cups server using the printer IP as the server name. But, I've never heard of doing that before.
All I need is that cups doesn't send this: ipp://my.unknown.hostname/printer/officejet but ipp://192.168.250.1/printer/officejet I cannot believe there is no way to do that. If it really isn't, locally patching my cups server seems to be the best and easiest way apparently than using broken workarounds. I found references: http://www.linuxquestions.org/questions/slackware-14/cups-howto-broadcast-se... Wolfgang -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
Hello Wolfgang, On Nov 29 07:21 Wolfgang Rosenauer wrote (shortened):
I'm trying to print to a remote cups server. The setup should be correct already with one issue left. The printer is always broadcasted with the hostname instead of the ip address of the print server. This hostname cannot get resolved in this network (I know it's bad but no way to change that). All documentation I've found says that I need to set "ServerName" in cupsd.conf to the ip address. But this doesn't work. It's still broadcasting the hostname as part of the printer uri.
This is openSUSE 11.3 with cups 1.4.4.
After stopping cupsd and running # netcat -l -u -p 631 I got packages from some servers with the IP in the URI but form other servers I got packages with the hostname. Therefore it seems it really depends on the server (and not on the client who may also convert an IP to the hostname). But I don't know how to configure this on the server. Therefore you may ask on the cups.general Newsgroup at http://www.cups.org/newsgroups.php or on its matching mailing list <cups@easysw.com> Alternatively you may not use the usual Browsing but BrowsePoll to let the client actively query the CUPS server, see http://www.cups.org/documentation.php/doc-1.4/ref-cupsd-conf.html Since openSUSE 11.3 you can set up BrowsePoll via the YaST printer module, see https://bugzilla.novell.com/show_bug.cgi?id=433047#c12 You may also have a look at http://en.opensuse.org/SDB:CUPS_and_SANE_Firewall_settings Kind Regards Johannes Meixner -- SUSE LINUX Products GmbH, Maxfeldstrasse 5, 90409 Nuernberg, Germany AG Nuernberg, HRB 16746, GF: Markus Rex -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
participants (3)
-
David C. Rankin
-
Johannes Meixner
-
Wolfgang Rosenauer