DNS 服务器
sing-box 1.9.0 中的更改
结构
{
"dns": {
"servers": [
{
"tag": "",
"address": [],
"address_resolver": "",
"address_strategy": "",
"strategy": "",
"detour": "",
"client_subnet": "",
"insecure": false
}
]
}
}
当内容只有一项时,可以忽略 JSON 数组 [] 标签
字段
tag
DNS 服务器的标签。
address
必填
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 |
为了确保 Android 系统 DNS 生效,而不是 Go 的内置默认解析器,请在编译时启用 CGO。
System/RCode/FakeIP 传输层仅可单独使用
RCode 传输层传输层常用于屏蔽请求. 与 DNS 规则和 disable_cache
规则选项一起使用。
RCode | 描述 |
---|---|
success |
无错误 |
format_error |
请求格式错误 |
server_failure |
服务器出错 |
name_error |
域名不存在 |
not_implemented |
功能未实现 |
refused |
请求被拒绝 |
address_resolver
如果服务器地址包括域名则必须
用于解析本 DNS 服务器的域名的另一个 DNS 服务器的标签。
address_strategy
用于解析本 DNS 服务器的域名的策略。
可选项:prefer_ipv4
prefer_ipv6
ipv4_only
ipv6_only
。
默认使用 dns.strategy
。
strategy
默认解析策略。
可选项:prefer_ipv4
prefer_ipv6
ipv4_only
ipv6_only
。
如果被其他设置覆盖则不生效。
detour
用于连接到 DNS 服务器的出站的标签。
如果为空,将使用默认出站。
client_subnet
自 sing-box 1.9.0 起
默认情况下,将带有指定 IP 前缀的 edns0-subnet
OPT 附加记录附加到每个查询。
如果值是 IP 地址而不是前缀,则会自动附加 /32
或 /128
。
可以被 rules.[].client_subnet
覆盖。
将覆盖 dns.client_subnet
。
insecure
接受任何服务器证书。
仅在地址组中含有 HTTPS/TLS/HTTP3/QUIC 协议时生效。