首页 > 互联网技术 > 再谈本地DNS服务器实现通配符host

再谈本地DNS服务器实现通配符host

2011年7月19日 发表评论 阅读评论

<<在个人电脑安装DNS>>一文中已经详细介绍了个人电脑安装DNS的用处,以及使用方法,但因为没有简单易用的软件,所以基本上全说了些废话.

今天得以再次提起此文要全靠stone2083同学不辞辛劳用自己周末的时间为我们写了个简易版的dns服务器软件.现在就说一下详细的使用步骤.

这里是stone2083介绍的内容,如果您没有看懂,那请继续往下看我写的内容,如果您已经会操作了那下文已经没有再看的必要了,不要浪费宝贵时间嘛!

一,修改本地连接的dns服务器

在[本地连接]右击,选择属性,然后找到[Internet协议(TCP/IP)],并将首选dns服务器改为127.0.0.1  备用dns服务器改为8.8.8.8(这是Google的dns服务器,你也可以用电脑本来的,这个基本没影响),为什么改成这两种形式呢?后面还会说明的.

补充:如果你的电脑使用宽带拨号上网,那就修改宽带连接的dns服务器

二,建立hosts文件

将我提供的hosts文件放入到D盘根目录中,hosts中访问某Y视频网站的hosts记录已经写好了,如还有其他需求请自行添加.

三,启动软件

在运行中输入cmd,然后用cd命令进入dns/dist目录(我的是cd),

然后再输入dns.exe 8.8.8.8 –s d:\hosts  并回车这时就已经启动了dns服务器软件了,请注意cmd窗口不能关闭,关闭了dns服务器也就关闭了,这时打开你的浏览器试试Y视频网站,看看能不能打开了?肯定是能的,但不排除某些问题导致不成功的情况,请留言,我看看能否给您解决.

四,其他说明

关闭cmd窗口后dns服务器就关闭了,但如果手动再去改[本地连接]会很麻烦,所以当时把备用dns服务器改为8.8.8.8了,这样如果电脑检测到127.0.0.1已经不能使用了就会自动切换到8.8.8.8上,这样不用再改本地连接的dns服务器就可以正常使用了.下次再启动软件时也不用再设置了.

至于这样设置会不会减慢dns解析的速度,我不好说,不过我没感觉到,但从原理上分析可能会有影响,因为电脑要首现检测127.0.0.1的dns服务器是否能用,不过这个检测时间是多少我就不知道了.

前文中虽然介绍了一个可以快速切换dns设置的软件,但此软件好像只能改本地连接的dns设置,并不支持宽带连接的dns修改,所以嫌麻烦的还是使用上文我提供的设置吧.

要不您就把stone2083同学提供的软件设置为开机自动启动,不过对Y视频需求不是很大的好像没必要呵.

说来stone2083提供的dns软件每次都要在cmd中输入一些命令总是有些麻烦,那就直接在dist目录中建一个bat文件,输入dns.exe 8.8.8.8 –s d:\hosts 然后将此bat软件的快捷方式放到桌面上,这样以后双击运行就可以了.

下面是软件下载地址:

dns服务器软件:

http://www.blogjava.net/Files/stone2083/python/standalone.zip(解压后放到D盘就可以了)

我提供的hosts文件:http://drp.so/Vhj__TU(解压后放到D盘根目录)

bat快速启动文件:http://drp.so/zqPs7Yv(放到standalone解压后的dist目录中)

更新:

今天在文章时发现了一个问题,纠正一下自己以前的错误想法:

网卡配置里那两个所谓的“主”“备”DNS,并非是我们理解的,先用主DNS解析,解析不到再用备用DNS,而是同时像这两个DNS发解析请求,谁响应快就用谁的结果。

以前只是想当然的认为,并没有做测试,希望不会误导大家太多.

评论中还有一些不错的方法、说明,有需要的可以看看.


  1. 圣上
    2011年7月21日17:00 | #1

    木有成功

    大海 回复:

    你多少也要说说出了什么问题啊,这样我真的没法解答你啊

  2. Steven
    2011年7月22日00:37 | #2

    一切按博主所作,木有成功!悲剧记录如下:
    D:\standalone\dns\dist>dns.exe. 8.8.8.8 -s d:\hosts
    127.0.0.1 –[Thu Jul 21 18:24:12 2001] http://www.facebook.co Not Found
    [Errno 11001] getaddrinfo failed
    [Errno 11001] getaddrinfo failed

    大海 回复:

    你试试启动后用127.0.0.1作为DNS看看能不能正常解析域名,不一定是被墙的,先看看可以正常访问的域名是否还正常.

    大海 回复:

    还有一点忘了告诉你,我提供的hosts只能正常访问YouTube,要访问facebook还需要另想办法

  3. Steven
    2011年7月22日23:52 | #3

    Steven :
    一切按博主所作,木有成功!悲剧记录如下:
    D:\standalone\dns\dist>dns.exe. 8.8.8.8 -s d:\hosts
    127.0.0.1 –[Thu Jul 21 18:24:12 2001] http://www.facebook.co Not Found
    [Errno 11001] getaddrinfo failed
    [Errno 11001] getaddrinfo failed
    大海 回复:七月 22nd, 2011 at 上午 3:15你试试启动后用127.0.0.1作为DNS看看能不能正常解析域名,不一定是被墙的,先看看可以正常访问的域名是否还正常.
    大海 回复:七月 22nd, 2011 at 下午 5:36还有一点忘了告诉你,我提供的hosts只能正常访问YouTube,要访问facebook还需要另想办法

    很郁闷,仍然不行,地址栏输入www.youtube.com, enter后就转到一个SB连接显示“很抱歉,在 http://www.google.cn 上没找到您要访问的网页”~~~~~ 我根本就没有用Google搜啊,我是直接输入的访问地
    址,中国的网络真他娘妖魔鬼怪~~~

  4. Steven
    2011年7月22日23:57 | #4

    这是啥意思呢?是不是可以理解为网民访问不到Y网然后一看是什么“~~~在 http://www.google.cn 上没找到您要访问的网页~~~”这类的提示,把屎盆子扣Google头上? 但这个也太弱智了吧,有人相信么?!求解博主

    大海 回复:

    出现这个提示我就要恭喜你了,出现这个提示的原因是我提供的hosts中的IP已经不能使用了,需要更换其他的IP了,但你的配置应该是没有错误的.

  5. 2011年8月10日19:29 | #5

    分享一下!博主写的不错哦! http://www.cn-tongxin.com

  6. wfg
    2011年8月20日01:54 | #6

    可以使用VBS隐藏那个不愉快的窗口。。。
    Set Magic = CreateObject(“WScript.Shell”)
    Magic.Run “dist\dns.exe -s 8.8.8.8 -f C:/WINDOWS/system32/drivers/etc/hosts”,0

  7. 白眼
    2011年9月3日19:31 | #7

    请问博主,python应该安装哪个版本的啊?

    大海 回复:

    这个应该没什么特别要求,下个最新的安上就行.
    不安装python此软件好像也能使用.

  8. 白眼
    2011年9月5日15:01 | #8

    不会吧,python2.X和3.X几乎是完全不同的语言,不能相互兼容的!

    大海 回复:

    我对Python一无所知,更没有版本的概念了,只是使用此DNS服务器软件的话应该是不需要安装Python的.

  9. stone2083
    2011年9月7日01:40 | #9

    @白眼
    python2.6+以上版本均可。(python3不行)
    standalone版本是通过py2exe,将其转成exe,故无须安装python(实际上已经将依赖的python库转成dll文件了)

  10. 2011年9月16日17:48 | #10

    My hat is off to your atuste command over this topic-bravo!

  1. 2011年7月20日03:49 | #1

无觅相关文章插件,快速提升流量