Internet 共享期间 DNS 请求并非来自 iPhone

Internet 共享期间 DNS 请求并非来自 iPhone

我正在尝试捕获来自特定 iPhone 设备的 DNS 请求。iPhone 通过 USB 连接到 Mac Mini,并且启用了互联网共享,因此所有 iPhone 的流量都通过 Mac Mini。

我使用 Wireshark 捕获了 Mac Mini 上所有接口的连接请求。我发现了以下模式:

  1. 设备(192.168.2.8)发出 HTTP 连接请求www.bbc.com
  2. Mac mini(192.0.2.5)发出 DNS 请求www.bbc.com
  3. DNS服务器(8.8.8.8)返回IP
  4. 设备连接到返回的IP。
16865   15.041563   192.168.2.8 192.0.2.5   HTTP 175 CONNECT www.bbc.com:443 HTTP/1.1 
17187   15.044637   192.0.2.5   8.8.8.8     DNS  71  Standard query 0x121a A www.bbc.com
17209   15.100623   8.8.8.8     192.0.2.5   DNS  149 Standard query response 0x121a A www.bbc.com CNAME www.bbc.com.pri.bbc.com CNAME bbc.map.fastly.net A 146.75.44.81
16891   15.118605   192.0.2.5   192.168.2.8 HTTP 105 HTTP/1.1 200 Connection established 

令我困惑的是:

  1. DNS 请求应该由设备发出,但它似乎是由 mac mini 发出的。
  2. DNS 请求返回到 mac mini 并且从未传递给设备,但设备以某种方式知道要连接哪个 IP。

有任何想法吗?

答案1

这正是它对于正常 HTTP 请求的工作方式。

客户端,即我的 mac 向 8.8.8.8 发送一个 dns 请求,并得到一个包含 bbc 的 ip 的回复。

然后它通过 iphone 通过该 ip 连接到 bbc。iphone 不是 dns 服务器,它根本不关心 dns 名称。

所有的 DNS 请求都源自客户端。

相关内容