请教如何能自己建立一个私有的 DNS 服务器呢?

2014-05-09 22:03:09 +08:00
 ShunYea
如题,就像v2ex一样,建立一个:199.91.73.222或者178.79.131.110这样用途的DNS服务器?网上搜了一下,要么讲如何建立自己的域名解析服务器,要么是私网的。
我想自己建立一个自用,这几天国内大环境特殊,用运营商包括114等的DNS都无法访问app store和itunes.apple.com域名,均提示“错误,您所请求的网址(URL)无法获取”,换成4个8或者一些小众DNS就正常,但是众所周知的原因4个8不好用,经常性丢包,路由不对反而访问更慢,而小众DNS怕不安全,怕信息泄漏。
所以想到自己建立一个,不知道私人能不能做?要求就是解析大众网站要跟114等一样的高效,不说访问facebooke等能访问,但是最起码之前正常的app store能用。
请教能不能自己实现?
70328 次点击
所在节点    DNS
93 条回复
ShunYea
2014-05-10 00:06:44 +08:00
@Shieffan 具体命令是什么呢?我现在上游设置的4个8,这个是否有开放5353呢?感觉国外的DNS就4个8做的好点,其他感觉CDN路由解析会无法判断,反而访问国内网站会更慢。很久以前感觉4个8在国内有镜像一样,ping值只在50ms左右,现在都是180ms以上了,感觉又移除国内了?
ShunYea
2014-05-10 00:07:35 +08:00
@sandtears 我还是想搞简单点,自建DNS方便多个设备共享。
ShunYea
2014-05-10 00:10:50 +08:00
@leavic 这个方法还需要有VPN帐号,算了,成本高,还是我自己自建服务器比较好。
phuslu
2014-05-10 00:15:07 +08:00
@ShunYea 这个是使用国内外 dns 多路解析的,速度快,cdn 友好。
ShunYea
2014-05-10 00:18:09 +08:00
@phuslu 谢谢,那我要怎么利用呢?我看这是个脚本嘛。
streamgo
2014-05-10 00:24:15 +08:00
@ShunYea 可否共享一下具体的方法和教程吗?
slixurd
2014-05-10 00:30:55 +08:00
检测端口有没有开放自己nmap一下就完了
slixurd@slixurd-pc:~$ nmap -v -Pn -p 5353 8.8.8.8

Starting Nmap 6.40 ( http://nmap.org ) at 2014-05-10 00:29 CST
Initiating Parallel DNS resolution of 1 host. at 00:29
Completed Parallel DNS resolution of 1 host. at 00:29, 0.00s elapsed
Initiating Connect Scan at 00:29
Scanning google-public-dns-a.google.com (8.8.8.8) [1 port]
Completed Connect Scan at 00:29, 2.00s elapsed (1 total ports)
Nmap scan report for google-public-dns-a.google.com (8.8.8.8)
Host is up.
PORT STATE SERVICE
5353/tcp filtered mdns
GPU
2014-05-10 02:57:23 +08:00
@leavic 你说的这个 。有木有详细文档呢? openwrt支持否?
GPU
2014-05-10 03:04:58 +08:00
搞一台国外服务器A 查询4个8 的dns 记录 。然后一台国内的去获取服务器A的记录 。这样效率会不会很低呢?
tywtyw2002
2014-05-10 07:50:03 +08:00
dns没啥难度

比如bind,先搞个acl只允许自己想要的ip访问。然后把请求forward刀8.8.8.8里面留好了。

国内的话起个ipsec隧道到国外。
phyng
2014-05-10 10:02:47 +08:00
@phuslu 应该是在Goagent里面的配置文件里面打开:
[dns]
enable = 1
listen = 127.0.0.1:53
yanwen
2014-05-10 10:14:49 +08:00
@ShunYea 完善了之后 分享一下搭建心得?
leavic
2014-05-10 10:44:29 +08:00
@GPU 搜一下 autoddvpn和autoddvpn for openwrt就有了,iPad上不方便找链接粘贴过来。本质就是通过VPN连接和断开时间触发路由器上的脚本,添加路由表让被封的IP和DNS走VPN。
JoeyChan
2014-05-10 12:46:41 +08:00
unbound转发就可以了,简单,有国外服务器的话可以用国外服务器转发,没有的话用openwrt路由+unbound转发8.8.8.8的tcp解析也可以。
sandtears
2014-05-10 13:45:24 +08:00
@ShunYea 可以啊,一台设备配置好转发之后将53端口监听在 0.0.0.0 上,其他设备的 DNS 写那台设备的 IP 地址就好。
至于简单的问题——难道下一个软件你觉得麻烦,而装 bind 再配置一大堆才不觉得麻烦?
princeofwales
2014-05-10 15:25:49 +08:00
原来我刷的tomato路由器,里面自带dnsmasq,不过没配置成功

将pppoe的DNS直接改成opendns5353,都OK了
但家里还有人只上国内网站,看国内视频,路由器上改了DNS,对CDN不友好
虽然dnsmasq里配置了部分域名直接国内DNS,但这种需手工维护的列表,很累,很麻烦

算了,又改回SS了
ShunYea
2014-05-10 15:34:43 +08:00
@slixurd 我这样添加了后,直接不工作了。解析不了域名了:
server=8.8.8.8#5353
server=8.8.4.4#5353
ShunYea
2014-05-10 15:39:23 +08:00
@streamgo
@yanwen
我目前是参照这个教程来的: http://www.myhack58.com/Article/54/93/2014/43249.htm
基本做法也就这样,还不会高级命令,正在研究,还有他那个不同域名不同DNS解析的表还得考虑怎么完善才最佳。
ShunYea
2014-05-10 15:41:51 +08:00
@GPU 感觉这个dnsmasq是个缓存,不是每次都先到自建DNS又到上游DNS查。查过一次后就缓存到自建DNS,下次就直接调用了,然后是定期再去上游读回最新的DNS,所以不应该很慢,首次可能慢点。
不知道我理解对不对,高手请指点。
ShunYea
2014-05-10 15:46:05 +08:00
@Shieffan 你的意思就是,我的电脑先到自建DNS是靠53端口,然后自建DNS到上游比如4个8就转成5353端口,就跳过了gfw,然后返回的就是正确的IP,然后就可以上了?就这么简单?

PS:能给几个上游可靠DNS和可用端口吗?刚才使用server=8.8.8.8#5353直接无法解析了。新手懂的命令不是很多,你执行的这个结果我也看不懂,哪里提示可用哪里提示不可用。谢谢。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/111836

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX