我在大学里经营一个小型的联合办公空间,在打印方面遇到了一些挑战。大学在其网络上使用打印发布系统,而联合办公空间的用户无法访问该系统,因为他们都使用访客 WiFi(没有关联的打印机)。我想设置一台他们可以访问的打印机,而无需手动通过 USB 插入或切换到其他 WiFi 网络来访问它。我设想的解决方案将有效地为打印机提供一个 URL,用户可以从任何地方添加和打印。我可以使用 raspberry pi/mini PC 等作为打印服务器。
我最初在树莓派上用 Balena 看过 CRUPS,但打印机和设备需要在同一网络上。我知道 Papercut PrintMobility,但目前 Mac 不支持远程打印。ezeep 看起来很有前途,但价格相当昂贵。有人对如何做到这一点有什么建议吗?
非常感谢!
答案1
严格来说,“Web 可访问”和“网络可访问”是两码事。有多种用于远程打印的网络协议,但大多数都是基于 TCP/IP 的独立协议,运行在各自的端口上(例如 LPD 使用 TCP 515,JetDirect 使用 TCP 9100)。
因此,如果您所说的“网络”是指您的访客 Wi-Fi 客户端仅限于 HTTP 和 HTTPS,那么 IPP 协议可能是您的最佳选择,因为它实际上是基于 HTTP 的 - 虽然它默认在端口 631 上运行,但将其切换到端口 80 没有任何问题,而且安全的 IPPS 已经与 HTTPS 共享端口 443。(除此之外,IPP 目前正成为一般的默认网络打印协议,并推出了“IPP Everywhere”等无驱动打印计划。)
Linux 打印系统 CUPS 可用作 IPP 和 IPPS 的服务器。默认情况下启用这些功能 - 您所要做的就是将其开放给非本地主机客户端。(它还附带用于提供 LPD 的“cups-lpd”,这对 Windows 客户端来说可能更方便。)
大多数操作系统都支持 IPP 打印 - macOS 使用 IPP 作为其主要打印协议(AirPrint 基于 IPP),Windows 也具有内置 IPP 客户端,可通过“打开和关闭 Windows 功能”安装(指示),Linux 客户端具有相同的 CUPS。