Bonjour 是一个局域网服务,包括服务发现、地址分配、主机名解析等技术,用于实现苹果公司零配置网络(zeroconf)。简单来说就是简化局域网的设置,让 Mac 和其它的设备自动地进行广播和探寻局域网内的设备和宣告自己所能提供的服务。
1. 什么是 Bonjour
Bonjour 内置于 macOS(以前称 Mac OSX)和 iOS 操作系统中,也可以在 Windows 上单独安装,有时也会捆绑在需要此功能的软件中。开源 IM 客户端 Pidgin、Kopete 和 Adium 支持 Bonjour IM 协议。
目前普遍适用的 Bonjour 版本是 2.0 版,基于 TCP/IP 协议运行。Bonjour 2.0 版于 2010 年 2 月 24 日发布,除了 macOS 外还适用于 Windows 2000、2003、XP、Vista、7、8 和 10。系统使用它主要是为了方便网络打印机的安装、配置和使用,因此它从启动开始运行。当 Bonjour 在 Windows 上全功能运行时,某些功能(例如 iChat)允许在 Windows 和 Mac OS 之间进行通信。
1.1 Bonjour 命名
Bonjour 的前身是 Rendezvous(法语的意思是约会),在 2002 年 8 月作为新系统 Mac OSX 10.2 的一个功能发布。但是因为命名涉嫌侵权问题,于 2003 年 8 月 27 日被 Tibco Software Inc 宣布已提起商标侵权诉讼,2004 年苹果和 Tibco Software 宣布达成协议庭外和解。
2005 年 4 月 12 日,苹果公司将 Rendezvous 改名为 Bonjour。
现用名 Bonjour 依然为法语音译词,在法语中为早上或下午的问候,类似于「美好的一天」
1.2 Bonjour 许可
Bonjour 属于面向客户的免费软件,但将其作为软件包的一部分重新分发或商业性质使用 Bonjour 图标的开发人员和软件公司可能需要许可协议。mDNSResponder 的源代码在 Apache 许可下可用。
2. Bonjour 在 Mac 中的应用
Bonjour 广泛运用在 Mac OSX 中,它让用户不需要知道 IP 地址或者端口的概念,就能寻找并发现存在于局域网中的打印机和文件共享服务器。Mac OS X 内置的应用程序如 iTunes 使用 Bonjour 服务来寻找共享的音乐库,iPhoto 使用 Bonjour 来查找其它 Mac 共享的照片。
在 macOS 中使用 Bonjour 的应用包括:
- iTunes 资料库共享
- iPhoto 共享照片
- AirPlay、隔空播放、隔空投送、AirPrint 等苹果局域网服务
3. Bonjour 在 Windows 中的应用
在 windows 计算机上,如果安装过 iTunes 或者 Adobe Photoshop CS 等应用,默认也会安装 Bonjour 服务,用于实现局域网发现功能。经常应用的场景就是无需知道 IP 就可以在网上邻居中访问 Mac 的主机名,发现共享的资源。Bonjour 服务在 Windows 上安装位置默认在 C 盘 Program Files 文件下,会启动名为 Bonjour 的服务,进程为 mDNSResponder.exe,使用的端口为 5353。
一般有需要的情况下安装包会默认集成 Bonjour 功能。比如安装了 Windows 版的 iTunes 的话, Bonjour 服务会默认安装并开启。当然也可以单独下载。