11/08/2010

【转载】Windows下架设DNS服务 -- 基于Bind

版权声明:可以任意转载,但转载时必须标明原作者charlee、原始链接http://tech.idv2.com/2007/09/17/build-dns-server-on-win32/以及本声明。


相信有很多人都想架设自己的DNS服务器。我们知道世界上最好用的DNS服务器软件就是BIND; 但是我辈使用Windows操作系统的人就无福享用这Unix下的顶级软件了。

或者可以用Windows Server自带的DNS服务器试试? 需要安装Server版的Windows不说,麻烦的配置和令人迷惑的图形界面就够受的了。

难道就没有一个解决方案了吗?

柳暗花明又一村,突然发现BIND居然有Windows版,这这这………… 赶快下载下来试一下,居然成功地配好了DNS。

BIND的Windows版叫做ntbind,在isc的ftp上有下载。 我下载的是ntbind-9.2.5版。解压之后运行安装程序,默认安装到C:Windowssystem32dns下。

装好之后就是配置工作了,不过在这之前建议先将 C:Windowssystem32dnsbin 添加到 PATH 环境变量中, 这样配置时就可以用 dig工具来代替难用的 nslookup了。然后再将自己机器的DNS地址改为 127.0.0.1。 注意修改DNS时别忘记ISP提供的DNS地址,过一会儿要用到。

打开 C:Windowssystem32dnsetc 目录,建立配置文件 named.conf,内容如下:

named.conf

options {    // zone文件的位置    directory "C:Windowssystem32dnsetc";    // 无法解析的域名就去查询ISP提供的DNS    // 在下面的IP地址位置上填写ISP的DNS地址    forwarders {        1.2.3.4;        1.2.3.5;    };    // 仅允许本机和子网内的机器查询    allow-query {        127.0.0.1;        192.168.0.0/24;    };};// 根DNSzone "." {    type hint;    file "named.root";};// localhostzone "localhost" IN {    type master;    file "localhost.zone";    allow-update { none; };};// localhost的反向解析zone "0.0.127.in-addr.arpa" {    type master;    file "localhost.rev";};// example.comzone "example.com" IN {    type master;    file "example.com.zone";};# End of named.conf

然后逐个建立named.conf中提到的几个文件,都放在 C:Windowssystem32dnsetc 下。

named.root:可以从ftp.rs.internic.net(匿名FTP)上下载。

localhost.zone:针对localhost的正向解析。

$TTL 1D@       IN      SOA     localhost.      root.localhost. (        2007091701          ; Serial        30800               ; Refresh        7200                ; Retry        604800              ; Expire        300 )               ; Minimum        IN      NS      localhost.localhost.        IN      A       127.0.0.1

localhost.rev:针对127.0.0.1的反向解析。

$TTL    1D@       IN      SOA    localhost.    root.localhost. (        2007091701          ; Serial        30800               ; Refresh        7200                ; Retry        604800              ; Expire        300 )               ; Minimum            IN      NS      localhost.1           IN      PTR     localhost.

example.com.zone:是我们为自己的域的正向解析配置。

example.com.    IN  SOA   ns1.example.com.  root.example.com. (        2007091701         ; Serial        30800              ; Refresh        7200               ; Retry        604800             ; Expire        300 )              ; Minimum        IN    NS        ns1.example.com.*       IN    A         192.168.0.2    ; 将所有域名都泛解析到192.168.0.2上

OK,这几个配置文件写好之后,启动命令行,输入以下命令:
C:> named -f -g -d 1

即可在控制台启动named。如果不能启动请仔细观察输入结果并自行查找错误。

然后你可以用dig命令来测试返回结果是否正确。

C:> dig www.google.comC:> dig www.sina.com.cn

你也可以打开浏览器,看看能否正常上网。另外因为我们配置了 example.com 的域, 所以 abc.example.com 应该能访问你架设在 192.168.0.2 上的 Web 服务器。

一切正常访问之后,我们还有一件事情要做:配置使用 rndc 命令来控制bind。 请执行以下命令:

C:> cd C:Windowssystem32dnsetcC:Windowssystem32dnsetc> rndc-confgen > rndc.conf

即可在 C:Windowssystem32dnsetc 下生成 rndc.conf 文件。编辑这个文件, 并将该文件的后半部分剪切到 named.conf 末尾,配置即完成。

重启 named,然后在命令行输入 rndc reload,应该能在named的控制台看到 重新加载配置文件的信息,说明配置成功。

最后一步,利用srvany将named安装为服务,即大功告成。(srvany需要安装Windows 2003 Server Resource Kit)

instsrv ntbind C:Windowssystem32dnsbinnamed.exe
参考文献


---------------------------------------------------------------------------------------------------------------------------
没有排版,凑合着看吧,要不直接去原文看。

有一点要补充的,在设置子域名的时候要像这样,而且对应的.zone文件中开头的网址一定要改好。
还有一点是域名后边要加上“.”!
---------------------------------------------------------------------------------------------------------------------------
x.com.    IN  SOA   ns1.x.com.  root.x.com. (
        2007091704         ; Serial
        30800              ; Refresh
        7200               ; Retry
        604800             ; Expire
        300 )              ; Minimum

        IN    NS        ns1.x.com.

123.x.com. IN A    10.0.0.55        ;子域名
abc.x.com. IN A    10.1.10.253    ;子域名
*       IN    A         10.1.0.144    ;将所有域名都泛解析到10.1.0.144上

11/05/2010

数字大战字母。

2010-11-05  22:36

    数字大战字母,360 VS QQ。从2010年10月3号18点开始,这个话题风靡了整个中国局域网,风头盖过了美国中期大选、他爸李刚、50种蔬菜价格上涨等重大事件。这表明了QQ对中国局域网的巨大影响力。

    QQ使用这种方式强迫用户卸载360,是不是太过自负了呢?会使QQ走向衰落甚至灭亡吗?反正我周围的人都认为马化腾脑袋发热了。但是,从股价上来看,从11.03的收盘价187.00到11.05的收盘价183.00,似乎跌幅并不大,这一收盘价更是高于10天均价1882.03、30天均价178.99、50天均价167.68。这证明了资本市场对此事的反应并不激烈。

    但这件事无疑是中国局域网发展历史上的一件大事,十年后甚至二十年后都会有人重新提起这件事。我认为它的意义主要在于两点:

    其一:使更多的初级用户了解到QQ扫描硬盘,侵害隐私的本质。虽然这一点在技术群体中已是众人皆知,但在广泛的初级用户群体中并没有流传开来。这件事情之后,大多数用户都会或多或少的了解到这一点。而且由于腾讯在公关方面的失误,使这一影响更为严重:对于360的舆论打压是很没有技术含量的,只是堆砌大量的技术词汇进行描述最终得出结论,并没有明确简单的指出360的后门及危害,而360更是以方便用户操作为特点,把技术问题用简单的描述告诉用户,使用者大部分又是初级用户,对计算机知识了解不多,而腾讯用大量技术词汇向这一群体宣传,结果不证自明;在腾讯微博上对于有关360信息的屏蔽更是使人感觉此地无银三百两;每次已公司名义发表的声明都避开隐私问题不谈,更是心虚的表现。

    其二:使很多用户产生对桌面软件的不信任感。金山傲游可牛搜狗百度无疑是这一过程的推手。用户,尤其是初级用户,对于计算机的操作本身就不熟练,而这些厂商又人为地制造使用障碍,这不是把用户往Web应用上推吗。本来就是个客户端软件岌岌可危的时代,这些厂商之间又在不断地进行恶性斗争,人为地给用户制造麻烦。在这个背景下,只要有公司能够提供稳定地Web应用,客户端的衰落必然会加剧。相关的Web应用举例:Google Reader、twitter官方版、docs.google.com、webqq2.0、腾讯财经、腾讯阅读、Google地图。。。太多了。

    所以,我认为以后网页版的应用会流行起来,而这一事件更是加速了这一天的到来。但腾讯会不会衰落,我和资本市场的观点是一致的。腾讯现在已经不是QQ了,它拥有一个相互支撑的帝国,而且对于业界的把握也很到位。


    中国局域网就是一场大戏,期待360的反制措施,哈哈。