Skip to content

wzv5/overture

This branch is 38 commits ahead of, 28 commits behind shawn1m/overture:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

183fc0e · Nov 29, 2023
Nov 29, 2023
Feb 19, 2020
Jun 20, 2020
Aug 23, 2020
Aug 23, 2020
Feb 17, 2020
Feb 25, 2017
Aug 23, 2020
Feb 22, 2020
Feb 22, 2020
Feb 19, 2020
Feb 19, 2020
Nov 29, 2023
Nov 29, 2023

Repository files navigation

overture

本项目是对 overture 的魔改,由于改动较大,且不再兼容原版配置文件,故决定单独发布。

相比原版改动如下:

  • 监听地址改为数组,可设置多个监听地址【不兼容原版配置文件】
  • 新增屏蔽域名和屏蔽 IP 功能,可用于广告过滤等用途
  • 新增替换域名和替换 IP 功能
  • 新增独立查询日志文件,便于审查请求
  • 缓存正在进行中的请求,防止同时重复发出同一个请求
  • UDP 上游如果返回 truncated 消息,自动切换到 TCP 再次请求
  • 对于 UDP 客户端,在必要时截断响应,以符合 DNS 标准
  • 对于主动返回的空结果(hosts、屏蔽域名),增加 SOA 记录
  • 连接池增加 MaxIdle 设置,以兼容最新版连接池库
  • 连接池默认 IdleTimeout 改为 8 秒,因为主流公共服务器均为 10 秒超时
  • 如果设置了 NoCookie,即使不设置 Client IP 也会生效,以兼容 dnspod 上游
  • 优化结果判断,增加查询类型判断(如查询 AAAA 但只返回了 CNAME),优化对 SOA 结果的处理
  • 优化缓存策略,不再缓存不含 SOA 的空结果,不再缓存查询类型不匹配的结果
  • 优化错误日志,当所有上游都失败时输出查询摘要,便于检查问题
  • edns clinet subnet mask 设置为 /16(IPv4) 和 /56(IPv6)
  • 调度器增加 AlternativeFirst 选项,避免隐私泄露给主服务器(自用瞎改)
  • 修复 suffix-tree 无法匹配的问题(原项目已合并 #239
  • 修复 hosts 与主流逻辑不符合的问题(原项目已合并 #240

下载

https://github.com/wzv5/overture/releases/latest

或通过 Scoop:

scoop bucket add wzv5 https://github.com/wzv5/ScoopBucket
scoop install wzv5/overture

License

This project is under the MIT license. See the LICENSE file for the full license text.

About

A customized DNS forwarder written in Go

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 95.4%
  • Python 4.6%