无污染的智能 DNS 搭建-overture
![]() | ![]() | ![]() | ![]() |
| 【性价之王】 | 【线路之王】 | 【价格之王】 | 【配置之王】 |
| 【免费之王】 | 【香港首推】 | 【梯子之王】 | 【独服之王】 |
简介overture 目前已经可以使用了,其相对 ChinaDNS 的优点是设置更丰富、使用国内外 DNS 的判断逻辑更完善、支持 ECS (edns-client-subnet),并且设置比 Pcap DNSProxy 简单很多。
本文会介绍在 PC 及 openwrt 路由器上部署 overture 的方法和要点。
项目地址https://github.com/shawn1m/overture
下载
你可以直接在 Releases 页面下载到编译好的可执行文件
Windows 请下载 overture-windows-386.zip(32 位)或 overture-windows-amd64.zip(64 位)
Linux 请根据架构下载对应版本,常见的 x86_64请下载 overture-linux-arm64.zip
Openwrt 路由器请下载 overture-linux-mipsle.zip(32 位)或 overture-linux-mips64le.zip(64 位)
此处稍微解释下配置内容,过于简单的部分就不赘述了
你也可以在项目 README 看到完整的英文说明
| 123456789101112131415161718192021222324252627282930313233343536373839 | { "BindAddress": ":53", "PrimaryDNS": [{ //主 DNS:一般使用国内 DNS "Name": "DNSPod", "Address": "119.29.29.29:53", "Protocol": "udp", "SOCKS5Address": "", "Timeout": 6, "EDNSClientSubnet": { //ECS 设置,在后文详述 "Policy": "auto", "ExternalIP": "" } }], "AlternativeDNS": [{ //备 DNS:一般使用支持非 53 端口的国外 DNS "Name": "OpenDNS", "Address": "208.67.222.222:443", "Protocol": "tcp", "SOCKS5Address": "", "Timeout": 6, "EDNSClientSubnet": { "Policy": "disable", "ExternalIP": "" } }], "OnlyPrimaryDNS": false, "IPv6UseAlternativeDNS": false, //对于 IPv6 是否仅使用备 DNS 查询的作为结果 "IPNetworkFile": { //IP 黑白名单配置,在后文详述 "Primary": "./ip_network_primary_sample", "Alternative": "./ip_network_alternative_sample" }, "DomainFile": { //域名黑白名单配置,在后文详述 "Primary": "./domain_primary_sample", "Alternative": "./domain_alternative_sample" }, "HostsFile": "./hosts_sample", //指定 Hosts "MinimumTTL": 0, //解析记录最小缓存时间(秒),0 则不使用 "CacheSize": 0, //缓存条数,0 则不使用 "RejectQtype": [255]} |
不清楚 edns-client-subnet 可先百度了解
国内的话目前 DNSPod 有 EDNS 支持
国外的话谷歌支持,但是谷歌不支持非 53 端口查询,如果非要用得设置 SOCKS5Address,因此还是用 OpenDNS 更加方便
如果该项为空并且发起查询请求的 IP 不是外部 IP,则该功能会被禁用
也就是说,如果想启用该功能,则 Policy 填 auto
如果你是在自己的 PC 上运行 overture,则 ExternalIP 填你当前网络环境的公网 IP
如果你是用你自己的 VPS 搭建 DNS,则 ExternalIP 可以留空
这些文件的指定是用于筛选主备 DNS 返回的结果,并将“合格”的作为最终结果,作用有点像黑白名单
填写路径的时候注意绝对/相对路径之间的区别,建议填写绝对路径
以及,Windows 路径的反斜杠需要转义,即使用
(我有点担心所以还是说一下):不支持直接使用在线 URL,所以后续提到的文件请下载到本地后使用
如果你想在路由器上使用,并且用的是 H 大的老毛子固件,后续有使用 overture 代替固件中自带的 ChinaDNS 的配置方法详述,不需要下载下面提到的文件
IPNetworkFile文件内容为一行一个 IP-CIDR
Primary 可使用 chnrouter,Alternative 不需要理会
这样的作用是当主 DNS 查询结果是国内 IP 的时候则立即采用,抛弃备 DNS 的结果,以加快查询速度和防止将国内服务解析到国外服务器
推荐 IPIP 维护的 chnrouter
DomainFile文件内容为一行一个域名
Primary 不需要理会(可以使用国内常见域名列表,但没必要),Alternative 可使用 gfwlist 域名列表(注意是域名列表,而不是 AutoProxy 或 PAC)
你可以使用以下 Linux 命令生成一个可使用的域名列表(其中包含 gfwlist + Koolshare 列表)
| 123 | curl https://raw.githubusercontent.com/gfwlist/gfwlist/master/gfwlist.txt | base64 -d | sort -u | sed '/^$|@@/d'| sed 's#!.+##; s#|##g; s#@##g; s#http://##; s#https://##;' | sed '/*/d; /apple.com/d; /sina.cn/d; /sina.com.cn/d; /baidu.com/d; /qq.com/d' | sed '/^[0-9]+.[0-9]+.[0-9]+.[0-9]+$/d' | grep '^[0-9a-zA-Z.-]+$' | grep '.' | sed 's#^.+##' | sort -u > /tmp/temp_gfwlist.txtcurl https://raw.githubusercontent.com/hq450/fancyss/master/rules/gfwlist.conf | sed 's/ipset=/.//g; s//gfwlist//g; /^server/d' > /tmp/temp_koolshare.txtcat /tmp/temp_gfwlist.txt /tmp/temp_koolshare.txt | sort -u > gfw_all_domain.txt |
如果你没有 Linux,呃,你可以开一个虚拟机或者 Windows 下的 Linux 子系统,或者用我提供的列表,但不会保证及时更新
HostsFileWindows 使用 C:WindowsSystem32driversetchosts
Linux / Openwrt 使用 /etc/hosts
运行Windows直接运行 .exe 文件即可,但这样会一直存在一个命令提示符窗口,想必会很难受
因此你可以将以下代码保存为一个 VBS 脚本,例如 overture.vbs,用来运行或直接添加到开机启动中,可以不显示窗口
建议直接将脚本放在和可执行文件同目录下,并且添加开机启动时使用脚本的快捷方式,这样不需要额外写路径
| 1 | CreateObject("WScript.Shell").Run "overture-windows-amd64.exe",0 |
在 Linux 中运行时推荐手动使用 -c参数指定配置文件路径,并且推荐使用绝对路径,特别是你写入 /etc/rc.local中的时候
H 大的老毛子固件有非常简便的方法可以使用 overture 代替 ChinaDNS,更加稳定
只建议可以使用内存卡或 U 盘的路由器来使用 overture,因为 overture 体积比较大无法保存在路由器闪存中
以下默认你已经将 overture 文件夹放置在 /opt/overture,并且将可执行文件直接更名为 overture
1. 修改 overture 配置文件端口改为 8053,和 ChinaDNS 的端口一致
IPNetworkFile 的 Primary 使用 /tmp/ss/chnroute.txt
DomainFile 的 Alternative 使用 /tmp/ss/all_domain.txt
脚本路径 /etc/storage/script/Sh19_chinadns.sh
请灵性修改,固件中的脚本在将来可能有变化因此我报的行数不一定是正确的,宗旨就是让 ChinaDNS 的启动和守护全换成 overture 的
找到 119 行的 chinadns_keep () {,在后面插入新行
| 1 | chinadns_path="/opt/overture/overture" |
找到 164 行,仿照这两句 killall,在后面加上两行
| 12 | killall overturekillall -9 overture |
将 198 行改为
| 1 | chinadns_path="/opt/overture/overture" |
将 221 行改为
| 1 | eval "$chinadns_path -c /opt/overture/config.json" & |
改完记得 mtd_storage.sh save,并且将修改后的脚本备份一份,以免更新固件后脚本被换回原版还得重改累得半死
接着就可以设置酸酸“DNS 服务模式选择”为 dnsmasq了,固件会使用我们改好的 ChinaDNS 脚本启动 overture
作者原文:https://lolico.moe/tutorial/overture.html
猜你可能想看的VPS
- 阿里云→CDN 有国内和亚太 100GB 流量 年付 22 元;500G全球[VPS测评]
- MoeCloud→洛杉矶 CN2 GIA KVM VPS 国内三网直连 全球[VPS测评]
- 四五互联→宿迁移动高防服务器 首月 99 元 年付 999 元全球[VPS测评]
- 阿里云服务器 2020 年 2 月促销,100%CPU 性能,2 核 4全球[VPS测评]
- hostkvm→7 折优惠促销-香港云地 VPS+日本 VPS+新加坡 日本VPS[主机]
- 极光 KVM→199.8 元 年 1GB 内存 30GB 空间 500G虚拟空间(主机)
- 便宜的免备案虚拟主机-Hostens 虚拟主机月付低至 0.99 美元全球[VPS测评]
- ¥34.99 月 512M 内存 10G SSD 500G 流量 100全球[VPS测评]
- Hostens - 全场 4 折促销 1 核 1G VPS 两年付$28全球[VPS测评]
- 二月促销 LOCVPS→新春 Xen VPS 七折优惠 全场八折优惠 香香港VPS[主机]
- WordPress网站引入腾讯vConsole调试面板方便手机端页面调试全球[VPS测评]
- OG协议对博客Google SEO优化有什么帮助?全球[VPS测评]
- 基于Vue.js的单栏wordpress博客模板全球[VPS测评]
- WordPress根据最后一次评论时间判断是否显示评论者链接全球[VPS测评]
- 什么是阿里云 ECS 服务器全球[VPS测评]
- DeepVM 西雅图4837高防VPS八折优惠,月付20元起;洛杉矶99全球[VPS测评]
- MoeCloud → 加拿大多伦多VPS 1C1G20G硬盘 5T流量@全球[VPS测评]
- 外贸无界烟台市有多少跨境电商?烟台跨境电商开发平台,烟台跨境电商选品全球[VPS测评]
- 外贸无界烟台市有多少跨境电商?烟台跨境电商开发平台,烟台跨境电商选品全球[VPS测评]
- HostKvm:韩国香港vps10月份最新促销,海外VPS全场八折优惠韩国VPS[主机]
- 酷锐云元旦促销活动:香港CN2/美国CN2高防vps月付20元起/美国原美国VPS[主机]
- LOCVPS:全球云美国洛杉矶CN2 VPS,香港云地Xen VPS七折美国VPS[主机]
- 港口雄开万里流丨不出国门海淘全球青岛跨境电商未来可期全球[VPS测评]
- RangCloud:香港云主机,1核1G内存/15G SSD/2Mbps香港VPS[主机]
- 拼多多入局跨境电商平台,首站美国;奈雪的茶在上海建第二总部;pidan“美国VPS[主机]
- 奇维云优惠活动:香港CN21核1G1M带宽云服务器免费领取香港VPS[主机]
- 百看不厌的文案,抖音唯美文案。全球[VPS测评]
- 空空云怎么样?香港CN2-GIA VPS,带宽2M,月付15元香港VPS[主机]
- 世界杯季疫情突发,跨境电商订单排队,义乌商人面临难题全球[VPS测评]
- 疯鱼云怎么样?香港CN2VPS首月14元,续费19元香港VPS[主机]
转载请注明原文地址:http://140.238.13.167:12355/read-202924.html











