github.com/sagernet/sing-box@v1.9.0-rc.20/docs/configuration/dns/server.zh.md (about) 1 --- 2 icon: material/new-box 3 --- 4 5 !!! quote "sing-box 1.9.0 中的更改" 6 7 :material-plus: [client_subnet](#client_subnet) 8 9 ### 结构 10 11 ```json 12 { 13 "dns": { 14 "servers": [ 15 { 16 "tag": "", 17 "address": "", 18 "address_resolver": "", 19 "address_strategy": "", 20 "strategy": "", 21 "detour": "", 22 "client_subnet": "" 23 } 24 ] 25 } 26 } 27 ``` 28 29 ### 字段 30 31 #### tag 32 33 DNS 服务器的标签。 34 35 #### address 36 37 ==必填== 38 39 DNS 服务器的地址。 40 41 | 协议 | 格式 | 42 |--------------------------------------|------------------------------| 43 | `System` | `local` | 44 | `TCP` | `tcp://1.0.0.1` | 45 | `UDP` | `8.8.8.8` `udp://8.8.4.4` | 46 | `TLS` | `tls://dns.google` | 47 | `HTTPS` | `https://1.1.1.1/dns-query` | 48 | `QUIC` | `quic://dns.adguard.com` | 49 | `HTTP3` | `h3://8.8.8.8/dns-query` | 50 | `RCode` | `rcode://refused` | 51 | `DHCP` | `dhcp://auto` 或 `dhcp://en0` | 52 | [FakeIP](/configuration/dns/fakeip/) | `fakeip` | 53 54 !!! warning "" 55 56 为了确保 Android 系统 DNS 生效,而不是 Go 的内置默认解析器,请在编译时启用 CGO。 57 58 !!! info "" 59 60 RCode 传输层传输层常用于屏蔽请求. 与 DNS 规则和 `disable_cache` 规则选项一起使用。 61 62 | RCode | 描述 | 63 |-------------------|----------| 64 | `success` | `无错误` | 65 | `format_error` | `请求格式错误` | 66 | `server_failure` | `服务器出错` | 67 | `name_error` | `域名不存在` | 68 | `not_implemented` | `功能未实现` | 69 | `refused` | `请求被拒绝` | 70 71 #### address_resolver 72 73 ==如果服务器地址包括域名则必须== 74 75 用于解析本 DNS 服务器的域名的另一个 DNS 服务器的标签。 76 77 #### address_strategy 78 79 用于解析本 DNS 服务器的域名的策略。 80 81 可选项:`prefer_ipv4` `prefer_ipv6` `ipv4_only` `ipv6_only`。 82 83 默认使用 `dns.strategy`。 84 85 #### strategy 86 87 默认解析策略。 88 89 可选项:`prefer_ipv4` `prefer_ipv6` `ipv4_only` `ipv6_only`。 90 91 如果被其他设置覆盖则不生效。 92 93 #### detour 94 95 用于连接到 DNS 服务器的出站的标签。 96 97 如果为空,将使用默认出站。 98 99 #### client_subnet 100 101 !!! question "自 sing-box 1.9.0 起" 102 103 默认情况下,将带有指定 IP 前缀的 `edns0-subnet` OPT 附加记录附加到每个查询。 104 105 如果值是 IP 地址而不是前缀,则会自动附加 `/32` 或 `/128`。 106 107 可以被 `rules.[].client_subnet` 覆盖。 108 109 将覆盖 `dns.client_subnet`。