DNS

出于一些兴趣和折腾的欲望,自己试着搭建了一些DNS服务器,目前已经有一组服务器成型,可以实现基本的应用,在自用了相当长的一段时间之后决定放出来:

Server: ns-us-1.wobu.se
- IPv4: 199.180.252.214
- IPv6: 2605:8900:5000:1001:8:0:57:7

Server: ns-us-3.wobu.se
- IP: 198.23.243.114

Server: ns-jp-1.wobu.se
- IPv4: 106.187.100.179
- IPv6: 2400:8900::13:a233

Server: ns-jp-a.wobu.se 感谢光源 @Deorumlux 提供VPS
- IPv4: 106.187.99.169
- IPv6: 2400:8900::f03c:91ff:fe70:6f6c

Server: ns-cn-bj.wobu.se 此服务器暂不能避免DNS污染
- IPv4: 118.244.148.68

Ports: 53, 233, 4321

上面的列表随时更新,如果发现某单机无法正常使用,可到这里先检查一下。上面的很多服务器并不是专门做DNS的,是在跑着别的应用的同时开了个DNS功能,所以稳定性无法保证。

注意:为防止服务器被用于进行DNS放大DDoS攻击,所有服务器限制最高查询响应频率为15次/秒。

总之,欢迎试用。

然后简单介绍一下。
服务器构架:
在后端使用 dnsmasq 向上级NS进行查询并缓存结果在本地,前端使用 bind 监听对外开放的各个端口,均接受 UDP/TCP 两种协议的查询请求,所有查询被 bind 转发给后端的 dnsmasq 然后把后者返回的结果发给客户端。
其中,使用 UDP 53 端口查询会受到污染,TCP 查询各端口均可返回正确结果。
另外,由于主机的原因,国内访问速度可能并不稳定,建议在用户机本地搭建一个DNS缓存以改善效果。对于 Linux 用户,最佳方案是在本地搭建 dnsmasq 作为缓存。

关于上述 DNS 服务器构架的详细说明另见我的个人wiki(English), 所用 dnsmasq 和 bind 配置文件也可从wiki找到。

目前实现的功能:
1. Google 服务使用谷歌北京服务器的IP做出响应,对没有进入关键词列表的域名可以实现加速,关键词列表内的域名可能返回空结果,使用TCP或非标准端口查询获取正确IP即可实现hosts翻墙同等效果暂时直接使用上级查询结果;

2. Alexa 中国排名前500的网站(列表于2012年4月29日获取,手工去除个别域名进行单独处理)、取自这份白名单的部分域名,以及所有 .cn 域名使用台湾的DNS服务器和/或中国电信DNS服务器 114.114.114.114 进行递归查询;

3. t.co 域名使用 @truthurt 编写的第三方解析程序,可直接还原短链接为源地址而不必翻墙;

4. iTunes 下载返回固定的几组IP地址使用台湾中華電信服务器解析,对中国大陆部分地区(已知河北联通效果甚好但四川长宽悲剧)用户有简单但有限的加速效果;

5. .hk 域名使用HKBN的服务器 203.80.96.10 | .tw.jp 域名使用中華電信的服务器 168.95.192.1 进行递归查询;

6. 通过返回 127.0.0.10.0.0.0 对一小部分国内的广告域名进行了屏蔽;

7. 上级服务器中包含 cesidian root 根服务器,完全兼容其所有功能,包括其私有 TLDs 的解析等;

8. 其它一些针对个别域名的小优化。

目前已知问题:
1. Google 部分服务需强制使用 https 链接,并可能出现证书警告;
2. 部分国内网站 CDN 解析仍然不完美,无法达到与本地DNS服务器相当的效果,个别站点速度有影响;
3. 国内网站列表不完善、广告域名列表极为有限;
4. BUG 收集中…

TODO:
1. 尝试强制客户机使用指定的国内服务器解析国内网站;
2. 通过客户机IP自动判断并导向至相应ISP的本地服务器;
3. 对 iTunes 等服务做进一步优化;
4. 补充完善国内网站列表;
5. 补充完善广告域名列表;
6. 尝试在所有服务器(如果条件允许可能继续增加)间实现配置同步甚至负载均衡;
7. 提供自定义私有 TLDs 解析;
7-1. 支持 dns.yas-online.net
8. 更多需求欢迎反馈…

如发现更多问题(如国内网站CDN不正确等)或有任何建议可直接在此页面留言或者发邮件至: dns@mail.atr.me
留言及邮件中请提供:所在地理位置、ISP名称、问题或建议的详细描述以及其他有关信息。
另外对于 TODO 列表里的各项目标如果有实现方案方面的建议也欢迎指教/~

-- Last Modified: Apr. 1st, 2013 --

分享到:

拍拍手

何不考虑再看看:

  • 木有相关文章了诶~

{ 发表评论? }

  1. Private Tracker 交流 China Internet Explorer Unknow Os

    看到首页拉风的console,还有这个dns服务,实在佩服不已

  2. 千与琥珀 China Google Chrome Windows

    看来是绝对的技术宅~
    不过像这样还是不能解决dns干扰,现在全都是用本地hosts来解决了

  3. feiyin China Mozilla Firefox Linux

    到你的站转了一会 ,不错啊 。 特别是那个首页够吸引人啊 。。。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

 

欢迎光临的说~
Merry