收藏本站腾讯微博新浪微博

经典论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

蓝色理想 最新研发动态 网站开通淘帖功能 - 蓝色理想插件 论坛内容导读一页看论坛 - 给官方提建议

论坛活动及任务 地图和邮件任务 请多用悬赏提问 热夏来袭,选一款蓝色理想的个性T恤吧!

手机上论坛,使用APP获得更好体验 急需前端攻城狮,获得内部推荐机会 论坛开通淘帖功能,收藏终于可以分类了!

搜索
查看: 6961|回复: 4

[网络] 建立公网解析的dns

[复制链接]
发表于 2009-7-6 22:13:13 | 显示全部楼层 |阅读模式
作者: By Raselion  MSN: Raselion@msn.com QQ: 25765
版权: 原创文章.转载请保留作者信息和原文完整.
授权: 经典论坛 http://www.Blueidea.com
原始链接: http://www.weiqp.cn/index.php/archives/652
鸣谢:yaba提供服务器让我折腾了这么长时间。

这个记录主要是自己架设DNS服务器当中的一些操作记录,有些地方可能是不太规矩,甚至是错的,但已经可以做到能工作了。剩下的可能错误的地方等以后找到了或者规划出来了之后在修改吧。

先说一下系统平台:

系统:debian 4.0

网络:教育网

软件:bind 9.3.4

辅助工具:webmin (因为水平有限,不敢直接操作conf所以一般情况都是用webmin操作)

先来几句废话吧,这个内容主要是架设公网的DNS服务器,可以用来替换新网或者万网等域名解析。好处呢就是没有了那20个二级域名的限制,缺点也很明显,就是你的dns服务器一般不会存在多机备份。我使用nslookup查看过,新网的dns服务器有n多个,同时出错的几率很小。(不过最近新网互联的dns还是被干掉了,至于新网的dns,坏掉是经常的事情了。—。—!),因为我的linux水平有限,所以,好多操作完全都是在webmin操作的。可能不会写的太详细,我只能说我尽力写的详细。

首先我们先对我们的域名进行一下设置,因为默认情况下我们注册的域名是使用的域名供应商的dns来解析的,我们要重新指定这个域名的dns服务器,一般来说注册自己的dns服务器都是免费的,但网上有些文章说万网是要花钱的。注册域名服务器的过程就是进入域名的控制面板,然后找到注册本域名的dns的链接,比如新网互联的是这个图标

进入之后会出现



的界面,只要在dns名字的地方输入你的dns名字就可以了,一般都是习惯用ns,或者ns1这样的名字来作为dns的名字,ip地址就是你要做dns服务器的ip地址了。点完保存之后就可以等着生效了,这个生效时间一般是24个小时,也有个别的是48个小时的。

如果你的域名是cn的可以在http://www.cnnic.net.cn/index/0A/index.htm,在主机查询框里面填写你自己的 DNS 域名,查询之后会出现



和上面差不多的结果。就表示你已经注册成功了dns服务器了。

如果你是com或者net这样的国际域名可以在http://www.internic.net/whois.html查询。如果成功也会返回一个结果的,注册成功dns服务器之后我们开始设置bind。

下面来说说bind安装步骤:

1、首先安装bind,如果您熟悉linux的操作,可以自己到ftp://ftp.isc.org/isc/bind9/去下载bind的安装文件。如果你和我一样linux操作水品一般,可以用webmin来安装这个软件。Webmin安装的版本是9.3.4的。ftp最新的已经是9.6了,甚至9.7a都出来了。用哪个版本就看你自己喜好了。

2、配置bind

一、在webmin的左侧菜单中找到bin or dns 服务器选项并点开,右侧会打开webmin下的bind设置界面。

二、在右侧的第一个图标选项里输入其他的dns服务器,具体什么用途我也忘记是哪里查的了,但好像是用来做一些替补吧,我写的是辽宁网通的DNS服务器。



同样的修改可以在终端模式下直接修改配置文件,配置文件的地址:/etc/bin/下的named.conf.options 文件里。

比如我的是这么写的:

options {

directory ”/var/cache/bind”;

forwarders{

202.96.64.68;

202.96.75.68;

};

auth-nxdomain no;    # conform to RFC1035

listen-on-v6 { any; };

}

三、添加新的DNS区域:

这个就是添加我们需要解析的域名了。

1)、我是直接添加的主区域。在bind的控制面板下面,点“创建信的主区域”的链接



在这个面板里的域名/网络选项里,输入要解析的域名记录文件那里可以为空,然后在后面对应位置写生你的主服务器和信箱以及刷新等资料。

在终端里的操作是修改named.conf.local 文件。添加格式是下面这个样子:

zone ”abrgo.cn” {

type master;

file ”/etc/bind/abrgo.cn.hosts”;

};

在终端模式下,需要在bind目录下新建一个abrgo.cn.hosts的文件,来进行下一部操作,在webmin图像下会自动创建这个文件。进行完上面的操作之后会在现在dns列表中出现一个你刚刚建立的区域链接比如:

进入到这个域的设置区域之后,我主要修改的是地址,和邮件服务器两个地方,地址的选项就是用来解析www.abrgp.cn这样的域名用的。



名称就是iis或者apache的主机名,比如输入www所指向的就是www.abrgo.cn,输入a呢就是a.abrgo.cn域名。存活时间一般情况下是选择默认就可以了。自己可以修改成其他的时间,地址,就是你要把这个域名解析到哪个ip的服务器上,输入你的目标ip就可以了。新建之后在下面出现一个表格来告诉你已经存在的域名。



这个主机记录也就是新网等控制面板里的A记录。

下面来设置MX记录,这个记录主要是用来做信箱使用的。

进入到上一个列表中的邮件服务器选项,然后输入:



如果名字为空的话,生成的mx记录就是纯域名的,你的邮件地址就是@abrgo.cn这样的邮件后缀,如果是输入了名称比如图中的mail,您的信箱后缀就是@mail.abrgo.cn了,ip地址也是指向你的邮件服务器地址。优先级的话好像有个范围,一般都是10-30,实际的范围忘记了起始点数值了。

不过这么添加完的邮件服务器记录会有个问题,这个也就是我说我的设置有错误的地方。所以我们要进入到配置文件里修改一下。

返回到上级页面进入链接里。会出现一个文本域的编辑器,会发现你用webmin做到设置都在这里有体现了:

$ttl 38400

abrgo.cn. IN SOA ns.abrgo.cn. admin.abrgo.cn. (

1246351189

10800

3600

604800

600 )

abrgo.cn. IN NS ns.abrgo.cn.

www.abrgo.cn. IN A 60.18.207.166

abrgo.cn. IN MX 10 60.18.207.166“.”

第一行就是dns的默认活动时间了。

第二行是设置了这个域名的dns服务器和管理员信箱,比较特殊的就是这里的信箱格式,不是以@间隔的,而是用“.”来间隔的。

第三行代表了这个域的序号,如果有兴趣可以修改。

第四行到第七行,就是新建区域中的最后4个选项里的时间了,单位应该是秒。

第八行就是指定了abrgo.cn的域名是使用ns.abrgo.cn这个域名服务器,IN 这个是固定格式,NS代表dns服务器。

第九行 代表了www.abrgp.cn这个域名的访问地址。A代表是A记录。注意的是,域名的结尾处有一个“.”用来表示域名结束。

第十行就是我们刚刚添加的mx记录了。我上面说的图形界面提交的错误就是出现在IP后面被引号圈起来的“.”了,正确的写法是.直接根本ip的这里为了注释,我用双引号框起来了,如果不加这个点的话,mx记录会出错的。

这个上面配置文件在/etc/bind/yourname.hosts 中,等到熟练之后了可以直接配置这个文件了。记住,所有配置完成之后要在webmin的右上角点下“Apply Zone 和
Apply Configuration ” 这两个链接让配置生效。如果你是修改配置文件的可以执行“rond reload”试试,

当设置DNS生效之后可以用nslook命令来查看一些信息。比如:

Windows下运行里输入cmd,然后依次执行nslookup, set type=ns, set debug , abrgo.cn这样就可以知道你的dns状态了,如果最后显示出你的dns的ip就代表成功了,然后可以ping一下你设置的域名看看了。

大概的内容就是这么多吧,如果要解析信的域名就需要添加信的域了。我这里只是添加了正向域。没有添加反向域。但经过了测试,A记录和MX记录都已经可以工作了。但估计里面还存在各种错误。目前只是可以做到可以工作了。剩下的就以后在总结吧。

[[i] 本帖最后由 raselion 于 2009-7-7 09:08 编辑 ]

公网DNS服务器架设记录.pdf

191.72 KB, 下载次数: 6889

PDF文档下载

评分

参与人数 1威望 +2 收起 理由
birder + 2 谢谢分享

查看全部评分

发表于 2009-7-7 11:13:26 | 显示全部楼层
补充Slave Server(从服务器)


首先,在主服务器上,您必须允许域可以传输。这个在 /etc/bind/named.conf.local 中域定义的示例如下所示:

[...]

zone "example.com" {
type master;
file "/etc/bind/db.example.com";
allow-transfer {
@ip_slave;
};
};

[...]



在从服务器上,您还必须象主服务器上一样做同样处理。然后编辑 /etc/bind/named.conf.local 并为域添加下列声明:

[...]

zone "example.com" {
type slave;
file "/etc/bind/db.example.com";
masters { @ip_master; };
};

[...]

重启服务器,您将在 syslog 看到类似下面的提示:

syslog.5.gz:May 14 23:33:53 smith named[5064]: zone example.com/IN: transferred serial 2006051401
syslog.5.gz:May 14 23:33:53 smith named[5064]: transfer of 'example.com/IN' from 10.0.0.202#53: end of transfer
回复 支持 反对

使用道具 举报

发表于 2009-8-18 18:15:54 | 显示全部楼层
2个问题:

既然是自己建立DNS服务器.为什么要启用forwarders功能.完全没有必要.
如果你forward的DNS服务器挂了或者响应慢.你就等着哭吧.

直接注释掉就可以了.不启用forward会让你的DNS服务器走标准的DNS查询协议.
直接去问root dns.防止电信的域名劫持.DNS树会自动轮询.并且有完备的cache.

关于listen-on-v6 { any; };应该改成listen-on-v6 { nonoe; };
否则如果有遇到ipv6的请求你的DNS会wait很长时间.
建议增加listen-on { 你的IP地址; }.没有必要让Bind在所有接口上监听.

BTW 很多年没有回复过这么长的技术贴
回复 支持 反对

使用道具 举报

发表于 2009-8-18 18:17:27 | 显示全部楼层
建议单台服务器不要启用区域传送.以免被攻击和泄露服务器配置信息.
不要随便去网上找点东西不经过大脑就上来贴.真受不了某些白痴!
回复 支持 反对

使用道具 举报

发表于 2009-10-4 10:23:19 | 显示全部楼层
  这是经验分享。。。。
哈哈 收藏了。。。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|Archiver|手机版|blueidea.com ( 湘ICP备12001430号 )  

GMT+8, 2020-10-20 13:22 , Processed in 0.124685 second(s), 15 queries , Gzip On, Memcache On.

Powered by Discuz! X3.2 Licensed

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表