由于家里宽带坏了但是封闭也修不了,手机看 B 站又屏幕太小,于是想使用 AirPlay 将手机投屏到 Mac 上。但是此时我由于有两部手机:一部是大流量卡,但经不起看太多视频,干其他的倒是绰绰有余;还有一部 iPhone 是 B 站 22 卡。
由于手机看 B 站免流,共享热点到电脑或 Pad 看都不能免流(我做了一晚上测试花了 2 个多 G 流量得出的结论),所以使用投屏。但目前 iPhone 没有连接 WiFi ,只打开了蓝牙和 WiFi 开关,Mac 连接了另一部手机的热点常开。
目前我知道 Zeroconf 协议相关的大致内容,但还是不解,这两台设备在没有任何共同网络区是怎么传输 AirPlay 信息的呢?
1
coldear 2022-04-15 04:53:47 +08:00
好像是通过蓝牙协商建立直连 wifi 。
|
2
coldear 2022-04-15 04:58:33 +08:00
|
3
xtinput 2022-04-15 07:47:10 +08:00
蓝牙建立连接,Wi-Fi 网卡虚拟一个接口进行网络通讯,用 wireshark 就看到那个虚拟的接口了
|
4
cpstar 2022-04-15 08:42:13 +08:00
@coldear 如果是 wifi direct 的话,屏幕端设备就得断网了,所以可能还不是 wifi direct 。再同一个局域网的,估计类似 DLNA 的相应技术,通过网络串流;如果不是同一个局域网的,是不是 3#说的新开了一个虚拟网卡,然后用这个建立了 wifi direct 或者就是对等网络。
另外,LZ 花 2G 的测试结果,免流的认证方式应该就是域名或者 IP ,热点出去之后,同样的地址确认不免流?比如用一个手机 B 去连接这个手机的热点,然后用 B 看 B 站不免流? |
5
wwmmkk 2022-04-15 09:45:56 +08:00 via iPhone
应该是 AWDL
|
6
haiironezumi 2022-04-15 09:49:22 +08:00 1
|
7
xtinput 2022-04-15 11:21:37 +08:00
虚拟网卡名是:awdl0 ,通用控制也是走的它传输
|