!!! quote "sing-box 1.9.0 中的更改"
:material-plus: [client_subnet](#client_subnet)
{
  "dns": {
    "servers": [
      {
        "tag": "",
        "address": "",
        "address_resolver": "",
        "address_strategy": "",
        "strategy": "",
        "detour": "",
        "client_subnet": ""
      }
    ]
  }
}
DNS 服务器的标签。
==必填==
DNS 服务器的地址。
| 协议 | 格式 | 
|---|---|
System | 
local | 
TCP | 
tcp://1.0.0.1 | 
UDP | 
8.8.8.8 udp://8.8.4.4 | 
TLS | 
tls://dns.google | 
HTTPS | 
https://1.1.1.1/dns-query | 
QUIC | 
quic://dns.adguard.com | 
HTTP3 | 
h3://8.8.8.8/dns-query | 
RCode | 
rcode://refused | 
DHCP | 
dhcp://auto 或 dhcp://en0 | 
| FakeIP | fakeip | 
!!! warning ""
为了确保 Android 系统 DNS 生效,而不是 Go 的内置默认解析器,请在编译时启用 CGO。
!!! info ""
RCode 传输层传输层常用于屏蔽请求. 与 DNS 规则和 `disable_cache` 规则选项一起使用。
| RCode             | 描述       |
|-------------------|----------|
| success         | 无错误    |
| format_error    | 请求格式错误 |
| server_failure  | 服务器出错  |
| name_error      | 域名不存在  |
| not_implemented | 功能未实现  |
| refused         | 请求被拒绝  |
==如果服务器地址包括域名则必须==
用于解析本 DNS 服务器的域名的另一个 DNS 服务器的标签。
用于解析本 DNS 服务器的域名的策略。
可选项:prefer_ipv4 prefer_ipv6 ipv4_only ipv6_only。
默认使用 dns.strategy。
默认解析策略。
可选项:prefer_ipv4 prefer_ipv6 ipv4_only ipv6_only。
如果被其他设置覆盖则不生效。
用于连接到 DNS 服务器的出站的标签。
如果为空,将使用默认出站。
!!! question "自 sing-box 1.9.0 起"
默认情况下,将带有指定 IP 前缀的 edns0-subnet OPT 附加记录附加到每个查询。
如果值是 IP 地址而不是前缀,则会自动附加 /32 或 /128。
可以被 rules.[].client_subnet 覆盖。
将覆盖 dns.client_subnet。