我有一台网络打印机 (HL-2250DN),我想从家庭网络之外访问它。在网络中,可以通过 192.168.0.103 访问它
现在我使用 DNS 服务将我的外部 IP 映射到域名。我现在如何访问我的打印机?myprinter.no-ip.org 映射到我的外部 IP。但我如何将其转发到我的打印机?$
在我的路由器上,我为 IP 192.168.0.103 转发了端口 80、631 和 646。但仍然不起作用。我做错了什么?
答案1
端口 80 用于 Web 服务器,端口 631 是 CUPS 的 Web 服务器,而端口 646 与我所知的打印无关。即,这些端口都不允许您通过防火墙转发打印机。
尝试转发端口 9100 并将打印机映射为 JetDirect 设备。Brother 打印机已经支持 JetDirect 很长时间了(我的打印机就是这样映射的)。
在 Windows 中,添加是不同的:
添加打印机 -> Local Printer Attached...
(取消选中自动检测)-> 选择Create New Port
,选择Standard TCP/IP Port
-> 输入主机名,Port Name
是抽象的,可以是任何内容(在合理范围内)-> 选择适当的打印机驱动程序 -> 完成,获利。其他一切都应为标准选项。
只要您转发 9100,理论上就可以了......
如果您尝试通过 NAT 和典型的 ISP 来实现 Windows 打印机共享,那么您将面临很多问题。
刚刚用我的 Brother 2070 和几百英里外的朋友测试了这一点,对我们来说效果很好,只需端口 9100 穿过防火墙即可到达打印机。YMMV。
答案2
您能从外部 ping 通上述端口吗?可能是在 ISP 级别被阻止,或者在您连接的级别(即您的远程办公室的路由器)被阻止。
更新:一种可以规避 ISP 或路由器阻止的方法是代理打印请求器(即您尝试在家中打印的办公室笔记本电脑)和家中的请求,无论是在家中的路由器中还是通过在家中设置的代理服务器。本质上,您会将对给定打印机名称/端口的访问代理到类似 print.yourdomain.com:80 的地址。yourdomain.com:80 上的服务器处理“打印”子域上的所有请求,并将它们代理到正确的打印机 IP 地址和端口号。
或者您可以获取 PDF 转换器,然后通过这种方式保存所有想要在家打印的内容,然后使用 USB 密钥进行传输。您的打印机有 USB 端口吗?:)
答案3
您是否可以使用Google Chrome 打印?