使用Script配置了接入公司WI-FI下自动对公司域名使用内部的DNS,而其他WI-FI下使用默认的DNS。
Script Evaluate的结果是正确的,但DNS并没有生效。最近的iOS VIF/macOS测试版增强模式下都不行。
conf相应的配置
[General]
skip-proxy = 127.0.0.1, 192.168.0.0/16, 10.0.0.0/8, 172.16.0.0/12, 100.64.0.0/10, localhost, *.local, *.company.com
always-real-ip = *.company.com
[Host]
*.company.com = script:company_dns
[Script]
company_dns = script-path= company_dns.js,type=dns
接入公司WI-FI下company_dns Script Evaluate的结果
Result:
{
"server" : "192.168.x.x"
}
但Local DNS Mapping下*.company.com后面为空,实际上内部域名也无法访问。
如果将Host改成如下静态地址则可以正常访问内部域名
*.company.com = server:192.168.x.x
附上Script 的代码
var ssids = [
'Company-WIFI-1','Company-WIFI-2'
];
var ssid = $network.wifi.ssid;
var route = $network.v4.primaryRouter
if (ssid === null) {
ssid = '' // 有线网
};
if (ssids.includes(ssid)) {
$done({server:'192.168.x.x'})
} else {
$done({})
}