首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Mopria和DNS-SD

Mopria和DNS-SD
EN

Server Fault用户
提问于 2015-03-04 17:07:39
回答 1查看 1.4K关注 0票数 1

随着Android4.4Kit的Advent,Google现在本机支持某种形式的内置打印功能。

这意味着现在很多打印机都支持Mopria。

就像IOS上的Airprint一样,Mopria只不过是用于检测打印机和实际打印的IPP2.0的多播DNS。当然,只有当手机或平板电脑与打印机位于同一子网时,MDNS才能工作。

然而,在Airprint上,我们可以创建指向打印机的DNS-SD记录,从而使IOS设备在不同的子网中列出设备。

莫普里亚也有办法吗?

EN

回答 1

Server Fault用户

发布于 2015-11-29 13:59:48

要通过Bonjour的使用为Android的莫布里亚-印刷品-服务发布一台打印机:

  • bonjour-服务类型:_ipp._tcp
  • txt-记录pdl:其中一个或多个
    • 图像/pwg光栅
    • 申请/PCLm
    • 申请/pdf

  • txt-记录ty:必须存在,例如CUPS
  • txt-record rp:适当的IPP路径(cups-打印机名称)

(代码极客可能会查看mopria/wfds java源代码)

概念的

证明:

使用dns-sd (Mac )为远程打印服务(在rasperry /cups上)做广告:

代码语言:javascript
复制
dns-sd -P "mopria" _ipp._tcp local 631 pi 192.168.2.118 \
        rp=printers/colorlaser \
        pdl=application/pdf \
        ty=CUPS

我的安卓设备现在可以打印PDF到我的杯子打印机,即USB连接到我的覆盆子π。

第1期:

Mopria-发现不能处理每个主机两个或两个以上的打印机。就“硬件打印机”而言,假设每个IP/主机有一个“队列”是合理的。在打印-假脱机,如杯子,你将面临严重的问题。

Mac :只有一台共享打印机可以被Mopria-Print-Service发现和使用

第2期:

由于某些原因,我无法使用avahi,以使cups-ipp-服务在Android的Mopria-Print-Service中可见。

这对我来说应该但不起作用:

代码语言:javascript
复制
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
  <name>mopria</name>
  <service>
    <type>_ipp._tcp</type>
    <port>631</port>
    <txt-record>txtvers=1</txt-record>
    <txt-record>qtotal=1</txt-record>
    <txt-record>rp=printers/colorlaser</txt-record>
    <txt-record>pdl=application/pdf</txt-record>
    <txt-record>ty=CUPS</txt-record>
  </service>
</service-group>

第3期:

当有太多的mDNS响应者时,Mopria会感到困惑。对于Avahi测试,您应该禁用CUPS的糖果广告。

档案: /etc/cupsd.conf

代码语言:javascript
复制
Browsing Off  
#BrowseOrder allow,deny  
#BrowseAllow all  
#BrowseLocalProtocols CUPS dnssd
票数 4
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/673035

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档