🗂 本文目录:Surge 指南 >
本地 DNS 映射
该功能和 /etc/hosts
文件基本一致。
[General]
# DNS 服务器设置
dns-server = 119.29.29.29,117.50.10.10,system
[Rule]
FINAL,DIRECT
[Host]
localhost = 127.0.0.1
本地 DNS 映射位于 [Host]
字段下,格式为:域名 = IP 地址
除了直接指定主机名所对应的 IP 地址,还支持本地值指定域名、对特定域名自定义特定的 DNS 服务器。
通配符
[Host]
*.example.com = 1.1.1.1
通配符支持 * 和 ?
本地值指定域名
[Host]
example.com = www.example.com
这相当于 CNAME 记录。
使用特定的 DNS 服务器
如域名 example.com
及其子域名指定使用 DNS 服务器 119.29.29.29 来解析:
[Host]
example.com = server:119.29.29.29
*.example.com = server:119.29.29.29
Surge 还支持配置部分域名回退到系统 DNS 解析:
[Host]
example.com = server:syslib
这可用于解决一些兼容性问题,比如一些 VPN 会利用 Split DNS 机制在系统中添加用于处理特定域名的 DNS 服务器,Surge 目前还不能支持这种复杂逻辑,可通过对 VPN 相关域名配置回退解决。
read-etc-hosts
从 /etc/hosts
读取 DNS 记录,默认开启。
[General]
read-etc-hosts = true
use-local-host-item-for-proxy
在设置「本地 DNS 映射」后,如果在遇到代理规则时,想使用 [Host]
部分中定义的 IP 地址(而不是原始域)发送代理请求,需要如下设置:
[General]
use-local-host-item-for-proxy = true
参考