mirror of
https://github.com/XTLS/Xray-docs-next.git
synced 2026-09-22 22:38:05 +03:00
Clear duplicates
This commit is contained in:
+14
-35
@@ -91,13 +91,7 @@ Xray 内置的 DNS 模块,主要有三大用途:
|
||||
- 当地址中同时设置了多个 IP 和域名,则只会返回第一个域名,其余 IP 和域名均被忽略。
|
||||
- 当地址中的第一个值为井号后加数字(如 `#3`)时,如果在使用 DNS 出站,核心会返回空的响应以及该数字编号对应的 rcode 以拒绝请求,如果请求来自内部查询则会单纯视为失败。
|
||||
|
||||
域名的格式有以下几种形式:
|
||||
|
||||
- 纯字符串:当此字符串完整匹配目标域名时,该规则生效。例如 "xray.com" 匹配 "xray.com",但不匹配 "www.xray.com"。
|
||||
- 正则表达式:由 `"regexp:"` 开始,余下部分是一个正则表达式。当此正则表达式匹配目标域名时,该规则生效。例如 "regexp:\\\\.goo.\*\\\\.com\$" 匹配 "www.google.com"、"fonts.googleapis.com",但不匹配 "google.com"。
|
||||
- 子域名 (推荐):由 `"domain:"` 开始,余下部分是一个域名。当此域名是目标域名或其子域名时,该规则生效。例如 "domain:xray.com" 匹配 "www.xray.com" 与 "xray.com",但不匹配 "wxray.com"。
|
||||
- 子串:由 `"keyword:"` 开始,余下部分是一个字符串。当此字符串匹配目标域名中任意部分,该规则生效。比如 "keyword:sina.com" 可以匹配 "sina.com"、"sina.com.cn" 和 "www.sina.com",但不匹配 "sina.cn"。
|
||||
- 预定义域名列表:由 `"geosite:"` 开头,余下部分是一个名称,如 `geosite:google` 或者 `geosite:cn`。名称及域名列表参考 [预定义域名列表](./routing.md#预定义域名列表)。
|
||||
其匹配格式(`domian:` `full:` 等等)同常用的 [路由系统](./routing.html#ruleobject) 中的 domain. 不同的是无前缀时此处默认使用 `full:` 前缀(类似常见的 hosts 文件写法)
|
||||
|
||||
> `servers`: \[string | [DnsServerObject](#dnsserverobject) \]
|
||||
|
||||
@@ -231,25 +225,20 @@ EDNS Client Subnet 扩展中使用的 IP 地址。
|
||||
|
||||
```json
|
||||
{
|
||||
"tag": "dns-tag",
|
||||
"address": "1.2.3.4",
|
||||
"port": 5353,
|
||||
"domains": ["domain:xray.com"],
|
||||
"expectedIPs": ["geoip:cn"],
|
||||
"unexpectedIPs": ["geoip:cloudflare"],
|
||||
"skipFallback": false,
|
||||
"finalQuery": false,
|
||||
"tag": "dns-tag",
|
||||
"clientIP": "1.2.3.4",
|
||||
"queryStrategy": "UseIPv4",
|
||||
"timeoutMs": 4000,
|
||||
"disableCache": false,
|
||||
"finalQuery": false
|
||||
"disableCache": false
|
||||
}
|
||||
```
|
||||
|
||||
> `tag`: string
|
||||
|
||||
该 DNS 服务器的 tag, 若设置,将使用该 tag 作为 inbound tag 发起请求(非 local 模式),覆盖全局 tag 选项。
|
||||
|
||||
> `address`: address
|
||||
|
||||
一个 DNS 服务器列表,支持的类型有两种:DNS 地址(字符串形式)和 DnsServerObject 。
|
||||
@@ -306,32 +295,22 @@ DNS 服务器端口,如 `53`。此项缺省时默认为 `53`。当使用 DOH
|
||||
|
||||
`true`,在进行 DNS fallback 查询时将跳过此服务器, 默认为 `false`,即不跳过。
|
||||
|
||||
> `clientIP`: [string]
|
||||
|
||||
EDNS Client Subnet 扩展中使用的 IP 地址。
|
||||
|
||||
需要是一个有效的 IPv4 或者 IPv6. 实际发送时会自动抹掉最后几位,IPv4 和 IPv6 分别以 /24 和 /96 的子网发送。
|
||||
|
||||
> `queryStrategy`: "UseIP" | "UseIPv4" | "UseIPv6" | "UseSystem"
|
||||
|
||||
限制此服务器的能力,以及由 Xray 自身发起的 IP 查询命中此服务器时查询类型的默认值。
|
||||
|
||||
默认值 `UseIP` 允许查询 A + AAAA。由 Xray 自身发起的查询未指定 IP 类型时,同时向上游 DNS 服务器查询 A 和 AAAA 记录。`UseIPv4` 只查询且只允许查询 A 记录;`UseIPv6` 只查询且只允许查询 AAAA 记录。
|
||||
|
||||
`UseSystem` 自适应操作系统网络环境。查询前分别检查是否有 IPv4 和 IPv6 的默认网关,以此限制服务器的能力并设置查询类型的默认值。在图形环境操作系统上实时检查,在命令行环境只检查一次。
|
||||
|
||||
> `timeoutMs`: number
|
||||
|
||||
DNS 服务器超时时间,默认 4000 ms.
|
||||
|
||||
它不会对 `localhost` DNS (系统 DNS) 生效,它总是跟随 golang 的 DNS 超时行为(cgo 与 pure go 可能略有不同)。
|
||||
|
||||
> `disableCache`: true | false
|
||||
|
||||
`true` 禁用 DNS 缓存,默认为 `false`,即不禁用。
|
||||
|
||||
它不会对 `localhost` DNS (系统 DNS) 生效,它总是跟随 golang 的 DNS 缓存行为(cgo 与 pure go 可能略有不同)。
|
||||
|
||||
> `finalQuery`: true | false
|
||||
|
||||
如果设置为真,该 DNS 服务器的请求会是最终尝试,不会触发 fallback 行为。
|
||||
|
||||
### 以下配置项若未指定,将继承自全局配置,也可以在这里覆盖全局配置
|
||||
|
||||
> `tag`: string
|
||||
|
||||
> `clientIP`: [string]
|
||||
|
||||
> `queryStrategy`: "UseIP" | "UseIPv4" | "UseIPv6" | "UseSystem"
|
||||
|
||||
> `disableCache`: true | false
|
||||
|
||||
@@ -79,14 +79,12 @@
|
||||
当多个属性同时指定时,这些属性需要**同时**满足,才可以使当前规则生效。
|
||||
:::
|
||||
|
||||
> `domain`: \[string\]
|
||||
|
||||
一个数组,数组每一项是一个域名的匹配。有以下几种形式:
|
||||
|
||||
- 纯字符串:当此字符串匹配目标域名中任意部分,该规则生效。比如 "sina.com" 可以匹配 "sina.com"、"sina.com.cn" 和 "www.sina.com",但不匹配 "sina.cn"。
|
||||
- 正则表达式:由 `"regexp:"` 开始,余下部分是一个正则表达式。当此正则表达式匹配目标域名时,该规则生效。例如 `"regexp:\\\\.goo.\*\\\\.com\$"` 匹配 "www.google.com" 或 "fonts.googleapis.com",但不匹配 "google.com"。(注意,在 json 中,经常在正则表达式中使用的反斜杠会被用作转义,当正则表达式中的反斜杠 `\` 应改为 `\\`)
|
||||
- 子域名(推荐):由 `"domain:"` 开始,余下部分是一个域名。当此域名是目标域名或其子域名时,该规则生效。例如 "domain:xray.com" 匹配 "www.xray.com"、"xray.com",但不匹配 "wxray.com"。
|
||||
- 纯字符串:同下面的子串,但可以省略前面的 `"keyword:"` 开头。
|
||||
- 正则表达式:由 `"regexp:"` 开始,余下部分是一个正则表达式。当此正则表达式匹配目标域名时,该规则生效。例如 "regexp:\\\\.goo.\*\\\\.com\$" 匹配 "www.google.com"、"fonts.googleapis.com",但不匹配 "google.com"。大小写敏感。
|
||||
- 子域名 (推荐):由 `"domain:"` 开始,余下部分是一个域名。当此域名是目标域名或其子域名时,该规则生效。例如 "domain:xray.com" 匹配 "www.xray.com" 与 "xray.com",但不匹配 "wxray.com"。
|
||||
- 子串:由 `"keyword:"` 开始,余下部分是一个字符串。当此字符串匹配目标域名中任意部分,该规则生效。例如 "keyword:sina.com" 可以匹配 "sina.com"、"sina.com.cn" 和 "www.sina.com",但不匹配 "sina.cn"。
|
||||
- 完整匹配:由 `"full:"` 开始,余下部分是一个域名。当此域名完整匹配目标域名时,该规则生效。例如 "full:xray.com" 匹配 "xray.com" 但不匹配 "www.xray.com"。
|
||||
- 无点域名:由 `"dotless:"` 开头,余下部分是一个不能含有 `.` 的字符串。当域名不含 `.` 且此字符串匹配目标域名中任意部分,该规则生效。例如 "dotless:pc-" 可以匹配 "pc-alice"、"mypc-alice",适用于内网 NetBIOS 域等。大小写敏感。
|
||||
- 预定义域名列表:由 `"geosite:"` 开头,余下部分是一个名称,如 `geosite:google` 或者 `geosite:cn`。名称及域名列表参考 [预定义域名列表](#预定义域名列表)。
|
||||
- 从文件中加载域名:形如 `"ext:file:tag"`,必须以 `ext:`(小写)开头,后面跟文件名和标签,文件存放在 [资源目录](./features/env.md#资源文件路径) 中,文件格式与 `geosite.dat` 相同,标签必须在文件中存在。
|
||||
|
||||
|
||||
Reference in New Issue
Block a user