Github 项目传送门: https://github.com/holyshawn/overture
写这个主要是解决一下 IPv6 环境下, AAAA 记录的可靠性问题, AAAA 记录全走 Alternative DNS 。 ChinaDNS 在这方面时好时坏,有时还会不稳定,毕竟校园 IPv6 只要有正确 IP 都是可以很好的访问的。
对于 IPv4 的策略与 ChinaDNS 一致,先默认使用 Primary DNS ,如果返回的地址不在自定义 IP 段内就使用 Alternative DNS 。在此方面,添加了一个增强功能,支持将 DNS 请求与一个自定义列表进行匹配(支持 base64 解码),如果匹配,那么直接走 Alternative DNS ,用来解决一些地址莫名其妙国外的解析到国内的问题。
两个自定义的配置文件默认推荐的都在 README 中有,具体说明请参看之,有问题可以回复或者提 Issue 。
各平台 Binary 已经编译好在 Release 里,另外发现 Travis-CI 的一个 bug , golang 无法编译 linux, amd64 带.a 库的 程序,折腾的要死要活,最后自己手动交叉编译传上来。。。