add mdns-lookup option

This commit is contained in:
Nick Peng
2023-12-22 22:57:23 +08:00
parent 4946d61d19
commit b6b937b248
5 changed files with 31 additions and 10 deletions

View File

@@ -29,7 +29,7 @@ SmartDNS提供了双栈优选的功能会自动进行测速优先让客户
1. 允许纯IPV6地址。
smartdns默认情况下总是会返回IPV4地址原因某些软件不具备IPV6的访问能力但如果确实需要使用纯IPV6地址可以设置允许smartdns仅优选IPV6。
smartdns默认情况下总是会返回IPV4地址原因某些软件不具备IPV6的访问能力但如果确实需要使用纯IPV6地址可以设置允许smartdns仅优选IPV6。
```shell
dualstack-ip-allow-force-AAAA yes

View File

@@ -5,6 +5,8 @@ hide:
# 解析本地主机名称
## 使用DNSMASQ lease文件
smartdns可以配合DNSMASQ的dhcp lease文件支持本地主机名->IP地址的解析可以配置smartdns读取dnsmasq的lease文件并支持解析。具体配置参数如下
注意DNSMASQ lease文件每个系统可能不一样需要按实际情况配置
@@ -16,3 +18,11 @@ dnsmasq-lease-file /var/lib/misc/dnsmasq.leases
1. Windows系统默认使用mDNS解析地址如需要在windows下用使用smartdns解析则需要在主机名后面增加`.`表示使用DNS解析。如`ping smartdns.`
1. smartdns会周期监控文件变化并自动加载变化的映射关系。
## 使用mDNS查询
smartdns可以使用mDNS来查询本地主机名或IP地址。具体配置如下
```shell
mdns-lookup yes
```

View File

@@ -44,10 +44,10 @@ hide:
| audit-file-mode | 审计归档文件权限 | 0640 | 文件权限 | log-file-mode 644 |
| audit-console | 是否输出审计日志到控制台 | no | [yes\|no] | audit-console yes |
| conf-file | 附加配置文件 | 无 | 合法路径字符串,通配符号 | conf-file /etc/smartdns/smartdns.more.conf <br /> conf-file *.conf |
| server | 上游 UDP DNS | 无 | 可重复。<br />[ip][:port]\|URL服务器 IP:端口(可选)或 URL <br />[-blacklist-ip]:配置 IP 过滤结果。<br />[-whitelist-ip]:指定仅接受参数中配置的 IP 范围<br />[-group [group] ...]DNS 服务器所属组,比如 office 和 foreign和 nameserver 配套使用<br />[-exclude-default-group]:将 DNS 服务器从默认组中排除。<br />[-set-mark mark]设置数据包标记so-mark。<br />[-proxy name]:设置代理服务器。 <br />[-bootstrap-dns]标记此服务器为bootstrap服务器。<br />[-subnet]指定服务器使用的edns-client-subnet| server 8.8.8.8:53 -blacklist-ip -group g1 -proxy proxy<br /> server tls://8.8.8.8|
| server-tcp | 上游 TCP DNS | 无 | 可重复。<br />[ip][:port]:服务器 IP:端口(可选)<br />[-blacklist-ip]:配置 IP 过滤结果<br />[-whitelist-ip]:指定仅接受参数中配置的 IP 范围。<br />[-group [group] ...]DNS 服务器所属组,比如 office 和 foreign和 nameserver 配套使用<br />[-exclude-default-group]:将 DNS 服务器从默认组中排除。<br />[-set-mark mark]设置数据包标记so-mark。<br />[-proxy name]:设置代理服务器。 <br />[-bootstrap-dns]标记此服务器为bootstrap服务器。<br />[-subnet]指定服务器使用的edns-client-subnet| server-tcp 8.8.8.8:53 |
| server-tls | 上游 TLS DNS | 无 | 可重复。<br />[ip][:port]:服务器 IP:端口(可选)<br />[-spki-pin [sha256-pin]]TLS 合法性校验 SPKI 值base64 编码的 sha256 SPKI pin 值<br />[-host-name]TLS SNI 名称, 名称设置为-表示停用SNI名称。<br />[-host-ip]: 主机IP地址。<br />[-tls-host-verify]TLS 证书主机名校验<br /> [-no-check-certificate]:跳过证书校验<br />[-blacklist-ip]:配置 IP 过滤结果<br />[-whitelist-ip]:仅接受参数中配置的 IP 范围<br />[-group [group] ...]DNS 服务器所属组,比如 office 和 foreign和 nameserver 配套使用<br />[-exclude-default-group]:将 DNS 服务器从默认组中排除。<br />[-set-mark mark]设置数据包标记so-mark。<br />[-proxy name]:设置代理服务器。 <br />[-bootstrap-dns]标记此服务器为bootstrap服务器。<br />[-subnet]指定服务器使用的edns-client-subnet| server-tls 8.8.8.8:853 |
| server-https | 上游 HTTPS DNS | 无 | 可重复。<br />https://[host>][:port]/path服务器 IP:端口(可选)<br />[-spki-pin [sha256-pin]]TLS 合法性校验 SPKI 值base64 编码的 sha256 SPKI pin 值<br />[-host-name]TLS SNI 名称, 名称设置为-表示停用SNI名称。<br />[-host-ip]: 主机IP地址。<br />[-http-host]http 协议头主机名<br />[-tls-host-verify]TLS 证书主机名校验<br /> [-no-check-certificate]:跳过证书校验<br />[-blacklist-ip]:配置 IP 过滤结果<br />[-whitelist-ip]:仅接受参数中配置的 IP 范围。<br />[-group [group] ...]DNS 服务器所属组,比如 office 和 foreign和 nameserver 配套使用<br />[-exclude-default-group]:将 DNS 服务器从默认组中排除。<br />[-set-mark]设置数据包标记so-mark。<br />[-proxy name]:设置代理服务器。 <br />[-bootstrap-dns]标记此服务器为bootstrap服务器。<br />[-subnet]指定服务器使用的edns-client-subnet| server-https https://cloudflare-dns.com/dns-query |
| server | 上游 UDP DNS | 无 | 可重复。<br />[ip][:port]\|URL服务器 IP:端口(可选)或 URL <br />[-blacklist-ip]:配置 IP 过滤结果。<br />[-whitelist-ip]:指定仅接受参数中配置的 IP 范围<br />[-g\|-group [group] ...]DNS 服务器所属组,比如 office 和 foreign和 nameserver 配套使用<br />[-e\|-exclude-default-group]:将 DNS 服务器从默认组中排除。<br />[-set-mark mark]设置数据包标记so-mark。<br />[-p\|-proxy name]:设置代理服务器。 <br />[-b\|-bootstrap-dns]标记此服务器为bootstrap服务器。<br />[-subnet]指定服务器使用的edns-client-subnet| server 8.8.8.8:53 -blacklist-ip -group g1 -proxy proxy<br /> server tls://8.8.8.8|
| server-tcp | 上游 TCP DNS | 无 | 可重复。<br />[ip][:port]:服务器 IP:端口(可选)<br />[-blacklist-ip]:配置 IP 过滤结果<br />[-whitelist-ip]:指定仅接受参数中配置的 IP 范围。<br />[-g\|-group [group] ...]DNS 服务器所属组,比如 office 和 foreign和 nameserver 配套使用<br />[-e\|-exclude-default-group]:将 DNS 服务器从默认组中排除。<br />[-set-mark mark]设置数据包标记so-mark。<br />[-p\|-proxy name]:设置代理服务器。 <br />[-b\|-bootstrap-dns]标记此服务器为bootstrap服务器。<br />[-subnet]指定服务器使用的edns-client-subnet| server-tcp 8.8.8.8:53 |
| server-tls | 上游 TLS DNS | 无 | 可重复。<br />[ip][:port]:服务器 IP:端口(可选)<br />[-spki-pin [sha256-pin]]TLS 合法性校验 SPKI 值base64 编码的 sha256 SPKI pin 值<br />[-host-name]TLS SNI 名称, 名称设置为-表示停用SNI名称。<br />[-host-ip]: 主机IP地址。<br />[-tls-host-verify]TLS 证书主机名校验<br /> [-k\|-no-check-certificate]:跳过证书校验<br />[-blacklist-ip]:配置 IP 过滤结果<br />[-whitelist-ip]:仅接受参数中配置的 IP 范围<br />[-g\|-group [group] ...]DNS 服务器所属组,比如 office 和 foreign和 nameserver 配套使用<br />[-e\|-exclude-default-group]:将 DNS 服务器从默认组中排除。<br />[-set-mark mark]设置数据包标记so-mark。<br />[-p\|-proxy name]:设置代理服务器。 <br />[-b\|-bootstrap-dns]标记此服务器为bootstrap服务器。<br />[-subnet]指定服务器使用的edns-client-subnet| server-tls 8.8.8.8:853 |
| server-https | 上游 HTTPS DNS | 无 | 可重复。<br />https://[host>][:port]/path服务器 IP:端口(可选)<br />[-spki-pin [sha256-pin]]TLS 合法性校验 SPKI 值base64 编码的 sha256 SPKI pin 值<br />[-host-name]TLS SNI 名称, 名称设置为-表示停用SNI名称。<br />[-host-ip]: 主机IP地址。<br />[-http-host]http 协议头主机名<br />[-tls-host-verify]TLS 证书主机名校验<br /> [-k\|-no-check-certificate]:跳过证书校验<br />[-blacklist-ip]:配置 IP 过滤结果<br />[-whitelist-ip]:仅接受参数中配置的 IP 范围。<br />[-g\|-group [group] ...]DNS 服务器所属组,比如 office 和 foreign和 nameserver 配套使用<br />[-e\|-exclude-default-group]:将 DNS 服务器从默认组中排除。<br />[-set-mark]设置数据包标记so-mark。<br />[-p\|-proxy name]:设置代理服务器。 <br />[-b\|-bootstrap-dns]标记此服务器为bootstrap服务器。<br />[-subnet]指定服务器使用的edns-client-subnet| server-https https://cloudflare-dns.com/dns-query |
| proxy-server | 代理服务器 | 无 | 可重复。<br />proxy-server URL <br />[URL]: [socks5\|http]://[username:password@]host:port<br />[-name]: 代理服务器名称。 |proxy-server socks5://user:pass@1.2.3.4:1080 -name proxy|
| speed-check-mode | 测速模式选择 | ping,tcp:80,tcp:443 | [ping\|tcp:[80]\|none] | speed-check-mode ping,tcp:80,tcp:443 |
| response-mode | 首次查询响应模式 | first-ping |模式:[first-ping\|fastest-ip\|fastest-response]<br /> [first-ping]: 最快ping响应地址模式DNS上游最快查询时延+ping时延最短查询等待与链接体验最佳;<br />[fastest-ip]: 最快IP地址模式查询到的所有IP地址中ping最短的IP。需等待IP测速; <br />[fastest-response]: 最快响应的DNS结果DNS查询等待时间最短返回的IP地址可能不是最快。| response-mode first-ping |
@@ -57,6 +57,7 @@ hide:
| srv-record | 指定SRV记录 | 无 | srv-record /domain/[target][,port][,priority][,weight] | srv-record /_vlmcs._tcp/example.com,1688,1,1|
| ddns-domain | 指定DDNS域名 | 无 | ddns-domain doamin.com, 用于将指定的域名解析为smartdns所在主机IP地址。| ddns-domain example.com
| dns64 | DNS64转换 | 无 | dns64 ip-prefix/mask <br /> ipv6前缀和掩码 | dns64 64:ff9b::/96 |
| mdns-lookup | 是否启用mDNS查询 | no | [yes\|no] | mdns-lookup yes|
| edns-client-subnet | DNS ECS | 无 | edns-client-subnet ip-prefix/mask <br /> 指定EDNS客户端子网 | ip-prefix/mask 1.2.3.4/23 |
| nameserver | 指定域名使用 server 组解析 | 无 | nameserver /domain/[group\|-], group 为组名,- 表示忽略此规则,配套 server 中的 -group 参数使用 | nameserver /www.example.com/office |
| ipset | 域名 ipset | 无 | ipset /domain/[ipset\|-\|#[4\|6]:[ipset\|-][,#[4\|6]:[ipset\|-]]]-表示忽略 | ipset /www.example.com/#4:dns4,#6:- <br />ipset /www.example.com/dns |