HomeKit零配置与设备发现
BonjourmDNS 是 Bonjour 的一部分
HomeKit使用Bonjour作为其零配置与设备发现的服务,Bonjour底层使用了 mDNS(Multicast DNS) 与DNS-SD协议实现了零配置、服务发现的机制;
step 1.HomeKit设备会根据mDNS协议在局域网中广播自身的 .local本地域名 与IP地址.
step 2.局域网中其他设备收到广播的后的设备.lcoal本地域名与IP地址后会将mDNS信息缓存起来.
设备即可通过缓存的固定域名访问到局域网中的其他HomeKit设备,无需关心设备IP地址是否变化;
由于mDNS协议自身的机制,HA接入到HomeKit中需要两者在同一个网段中,已保证mDNS服务能够正常通讯,否则需要mDNS中继设备用于保证mDNS报文能够跨网段转发;
接入HomeKit
了解了HomeKit设备的通讯原理之后只要能保证HomeKit设备与HA之间mDNS协议报文能够正常通讯,两者运行在同一个网段,HA就能够顺利接入HomeKit;
HA与HomeKit不在同一个网段无法通过mDNS协议通讯,需使用mDNS中继设备转发报文,不同方式安装HA导致无法接入HomeKit主要还是此问题;
1、当在Win的WSL下使用Core模式安装HA时,就会存在此问题,在Win的WSL中WSL2与宿主Win系统并不在同一个网段,目前官方也不支持两者在同一个网段下;
2、在Win下使用Container安装也会出现此问题,由于不支持host模式,因此两者也无法通过mDNS进行零配置设备发现,在桥接模式下两者也不再同一个网段;
除非能够手动打通Win与WSL或Docker同网段网络限制,使之mDNS能够通讯,或使用mDNS中继设备进行跨网段mDNS报文转发;
https://www.cnblogs.com/softlin/p/16632579.html