为什么断开 wifi 连接或使用飞行模式会中断服务发现,直到重新启动适配器或重新启动?
重新创建问题的步骤:
运行 Dns-sd -B "_services._dns-sd._udp.local。" ~返回所有服务
开启飞行模式
已删除发现的服务
关闭飞行模式
未重新添加的服务
关闭 cmd 提示符
打开新的 cmd 提示符
运行 Dns-sd -B "_services._dns-sd._udp.local。" ~ 不返回任何服务
重启 Bonjour 服务
运行 Dns-sd -B "_services._dns-sd._udp.local。" ~ 不返回任何服务
禁用 Wifi 适配器
启用 Wifi 适配器
在 Windows 10 上运行 Dns-sd -B "_services._dns-sd._udp.local。" ~返回所有服务
使用相同硬件的 win 8 也会出现问题。
代码为c#,系统使用dns-sd测试,测试过以下开源包:
zeroconf c# https://github.com/onovotny/Zeroconf ) ~ 同样的问题
Mono-zeroconf c# ( https://www.mono-project.com/archived/monozeroconf/ ) ~ 同样的问题
mdns 浏览器(https://chrome.google.com/webstore/detail/mdns-browser/kipighjpklofchgbdgclfaoccdlghidp)~有效,我不知道为什么。
在某些设置(路由器-适配器-操作系统)上,其他设置没有问题,只是无法通过连接/重新连接。
在失败的设置中,我找到了 1 个 USB wifi 适配器,大约 20 个。
其中一个不工作的适配器有一个名为 Radio on/off 的设备属性,如果我使用它而不是飞行模式,那么它确实可以工作。
为什么它不起作用,没有错误,警告或任何关键问题没有真正的一致性