JimhHan 4 years ago
parent
commit
cc45f01470
No known key found for this signature in database
GPG Key ID: 48D5D7CF95157AC5
  1. 27
      docs/config/transport.md

27
docs/config/transport.md

@ -393,12 +393,35 @@ ocspStapling 检查更新时间间隔。 单位:秒
在目标地址为域名时, 配置相应的值, SysteDailer 的行为模式如下:
- `"AsIs"`: 通过系统DNS服务器解析获取IP, 向此域名发出连接。
- `"UseIP"`、`"UseIPv4"` 和 `"UseIPv6"`: Xray 使用[内置 DNS 服务器](./dns.md)解析获取IP, 向此域名发出连接。
- `"UseIP"`、`"UseIPv4"` 和 `"UseIPv6"`: 使用[内置 DNS 服务器](./dns.md)解析获取IP后, 直接向此IP发出连接。
默认值为 `"AsIs"`
::: danger
如果启用了此功能,将有可能导致通过 `代理服务器` 代理 `解析代理服务器IP的查询` 的死循环。因此,**不建议** 经验不足的用户擅自使用此功能。
启用了此功能后,不当的配置可能会导致死循环。
一句话版本:连接到服务器,需要等待 DNS 查询结果;完成 DNS 查询,需要连接到服务器。
> Tony: 先有鸡还是先有蛋?
详细解释:
1. 触发条件:代理服务器(proxy.com)。内置 DNS 服务器,非 Local 模式。
2. Xray 尝试向 proxy.com 建立 TCP 连接 **前** ,通过内置 DNS 服务器查询 proxy.com。
3. 内置 DNS 服务器向 dns.com 建立连接,并发送查询,以获取 proxy.com 的 IP。
4. **不当的** 的路由规则,导致 proxy.com 代理了步骤 3 中发出的查询。
5. Xray 尝试向 proxy.com 建立另一个 TCP 连接。
6. 在建立连接前,通过内置 DNS 服务器查询 proxy.com。
7. 内置 DNS 服务器复用步骤 3 中的连接,发出查询。
8. 问题出现。步骤 3 中连接的建立,需要等待步骤 7 中的查询结果;步骤 7 完成查询,需要等待步骤 3 中的连接完全建立。
9. Good Game!
解决方案:
- 改内置 DNS 服务器的分流。
- 用 Hosts。
- ~~如果你还是不知道解决方案,就别用这个功能了。~~
因此,**不建议** 经验不足的用户擅自使用此功能。
:::
> `dialerProxy`: ""

Loading…
Cancel
Save