CUPS「瀏覽」協定被標記為已棄用,並在 CUPS v1.6 中刪除,原因是廣播問題和託管網路/WiFi。它是一種 UDP 協議,用於廣播 CUPS 伺服器上已安裝印表機的資訊並共用它們。
下圖簡單地描述了使用此協定的網路和印表機傳播:
Browse Protocol
*Printers are shared as ipp pools on the printserver*
+-----------+
|CUPS Client| ipp://printserver/printer01, ipp://printserver/printer02
|1.3.7 +--------+
| | | +------------------+
+-----------+ | | |
+------> Printserver |
+-----------+ | | CUPS 1.5.3 |
|CUPS Client| | | |
|1.5.3 | | +------+---------+-+
| +--------+ | |
+-----------+ | | ipp://printer01
smb://printer02 |
| |
+---------v-+ +--v-------+
| | | |
|Printer 02 | |Printer 01|
| | | |
++----------+ +----------+
*Printserver connects to them using
all kinds of protocols*
- 伺服器在同一VLAN上有接口,以進行印表機的zeroconf傳播;
- 客戶(其中一些)擁有通過
lpr
.他們的本地cups
有印表機指向印表機伺服器; - 印表機伺服器每 60 秒宣布(廣播)新印表機並更改一次;
我們有大約 10 個客戶端使用這些列印伺服器輪詢,而列印伺服器本身連接到 250 台印表機。由於在每個用戶端上新增印表機並不是一項令人愉快的任務,並且由於較新印表機的驅動程式問題,CUPS 需要更新,我問:
問題:是否有瀏覽協議的替代方案以分散式方式新增印表機?
需要保留此架構的原因:
- 有了這個集中式列印伺服器,我可以透過腳本進行作業統計並透過電子郵件發送它們。同步印表機但讓客戶端直接列印到它們將是一個「足夠好」的解決方案,但不是最好的;
- 在一台伺服器上輕鬆管理印表機;
- 安全。由於它是一個虛擬化環境,我可以決定哪個伺服器將在同一 VLAN 上有一個接口,印表機伺服器會廣播它的池/印表機;
- 我們的支援人員接受過使用預設的 cups 管理頁面 ( ) 新增和共用印表機的培訓
http://printserver:631
,但他們根本無法存取 shell。這就是為什麼像添加這樣的解決方案一項 avahi 服務對於每台印表機來說都不是好的選擇。
答案1
這完全沒有經過我自己的測試,但我找到了這個線程,這聽起來像是解決您的問題的可能方法。在論壇主題中標題為:首頁» 網路、伺服器與保護» CUPS (libcups) 1.6 列印問題的解決方案。
摘抄
大家好,我在這裡和其他地方閱讀了無數關於 CUPS 1.6 的一個非常令人沮喪的功能的帖子:顯然您不能像我們過去那樣單獨使用 libcups 來瀏覽網絡中的現有印表機。即使您知道本機 CUPS 伺服器的位址也不會。您需要安裝cups伺服器套件。
我花了很多時間試圖找到解決這個問題的方法,因為這真的很煩人。
我很高興地說我找到了一個非常簡單的解決方案:
- 你只需要 libcups (1.6),跟原來一樣
您需要編輯
/etc/cups/client.conf
或~/.cups/client.conf
並添加此行(我猜 /version 新增了與舊 CUPS 伺服器的互通性):ServerName foobar/version=1.1
顯然這是一個尚未記錄的新選項。感謝 Ubuntu 人員,我就是在那裡找到它的:https://bugs.launchpad.net/ubuntu/+source/cups/+bug/1069671
如果有人編輯維基以添加此內容,我將不勝感激。我現在正在路上。否則,我會在下週晚些時候做。
使此粘性也可能是合適的。
乾杯!
參考
答案2
cups-browsed 已針對 debian 進行了打包,旨在使用 mdns 新增等效功能。