LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1945|回复: 16

一个DNS的基本疑问! (困扰我已久)

[复制链接]
发表于 2006-8-24 19:07:52 | 显示全部楼层 |阅读模式
我们要注册DNS,要向服务商每年交钱。 这无外乎服务商向外界提供了我们注册域名与ip地址的转换。但是如果我们自己架设一个DNS服务器,那是不是不要服务商的支持了。

当我们的服务器上的域名与其他的域名重复,怎么办??

也就是说,当我的DNS服务器指定www.cctv.com 这个已经被注册的DNS,到一个其他的ip会怎么样??  DNS分布式的数据库中如何保证数据的唯一性??
发表于 2006-8-24 22:09:49 | 显示全部楼层
那是不是不要服务商的支持了。---是的但是你要投入一台服务器

当我们的服务器上的域名与其他的域名重复,怎么办??---
假设 你的域名是aaa。com   
即 对于 。com 下面只能有一个aaa
也就是说 你去。com买了 下面买了 aaa 他就不会再卖给别人了。 你买 aaa。com的时候告诉他 aaa。com 的ip=a.b.c.d 那么 当别人 问他 aaa.com的ip时,他自然回答a.b.c.d
你自己的服务器也是这样。

你的域名的控制权在你的手里,cctv的控制权在他自己手里。你明白么?

在用户的眼里,dns是一种把域名翻译成ip的软件,dns就像一棵域名树
在dns客户端程序的眼里,dns是一种查找子ip的软件。dns就像一颗ip树,每棵树有255个杈,每个杈代表一个ip
回复 支持 反对

使用道具 举报

发表于 2006-8-24 23:44:00 | 显示全部楼层
建议楼上两位都去好好学习一下DNS体系原理。

DNS = Domain Name System
他是一个系统,是一个逐级解析的系统。
当你访问www.sina.com时,会进行如下操作:
1。向你的[color="Blue"]DNS Server提交查询请求。
2。[color="blue"]DNS Server向[color="Red"]根服务器查询com域名的解析服务器,获取com域的服务器地址。
3。[color="blue"]DNS Server向[color="Red"]com域服务器查询sina.com域的DNS服务器,并获取sina.com的[color="Red"]DNS域服务器。
3。[color="blue"]DNS Server向[color="red"]sina.com域DNS服务器查询www.sina.com主机的IP,并获取这个IP。
4。[color="blue"]DNS Server向你返回查询到的IP,并进行缓存,当下一个用户进行同样的查询时,直接返回www.sina.com的IP。
5。你的浏览器将URL发送到查询到的IP,并获取返回信息。

当你自己架设一个DNS Server时,相当于独立的DNS系统。如果其他客户将他的DNS Server设定为你的DNS Server时,那么他们就会遵从你的DNS上的记录进行域名——〉IP的解析,换句话说,如果你将www.cctv.com设定到你自己的机器,那么客户就会访问你的机器,而不是真实的CCTV。如果你的DNS不允许向上级DNS进行Forwards的话,那么客户仅仅能解析到你的DNS上所存在的域名——〉IP。这就相当于你自己另行建立了一套DNS树。

Post by aleng
在dns客户端程序的眼里,dns是一种查找子ip的软件。dns就像一颗ip树,每棵树有255个杈,每个杈代表一个ip

是谁告诉你只有255个杈的?:ask
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-8-25 11:35:41 | 显示全部楼层
楼上正解!! 我并不是不读书之辈,只因没有架设DNS服务器的经验。当时学习DNS原理的时候就是有这个疑问的。谢谢你为我解疑!
我以前还没有在意缓存这个东西,觉得个个DNS查询都要从根服务器查询的话也太慢了!
也就是说,客户的DNS服务器的设定是很重要的。 如果他们把DNS服务器都设为我自己的服务器,而且我的服务器不允许向上级查询。那么我的客户就只能使用我自己的一套DNS咯?
回复 支持 反对

使用道具 举报

发表于 2006-8-26 04:13:22 | 显示全部楼层
orphen 那有多少个杈亚,你别以为别人都不行就你行,你有什么行得?
我这一句话 “dns是一种把域名翻译成ip的软件,dns就像一棵域名树 ”就概括了你发的域名解析过程,你发的那个 大多数 dns教程上都有。哪有什么了。

对于伪域名服务器的问题,我从正面说出了不可能,你从反面说出了可能。也没什么可牛的
对于楼主
如果其他客户将他的DNS Server设定为你的DNS Server时那么他们就会遵从你的DNS上的记录进行域名——〉IP的解析

如果这是个伪dns服务器,这基本上只能欺骗你子网下的dns客户端

如果他们把DNS服务器都设为我自己的服务器,而且我的服务器不允许向上级查询。那么我的客户就只能使用我自己的一套DNS咯?----那么你的dns必须能解溪所有域名,先别管解析出来的对不对,但是这基本不可能,世界上没有一台dns服务器能解溪出所有域名,因为dns数据库是分布的,
回复 支持 反对

使用道具 举报

发表于 2006-8-26 09:30:38 | 显示全部楼层
Post by aleng
orphen 那有多少个杈亚,你别以为别人都不行就你行,你有什么行得?
我这一句话 “dns是一种把域名翻译成ip的软件,dns就像一棵域名树 ”就概括了你发的域名解析过程,你发的那个 大多数 dns教程上都有。哪有什么了。

对于伪域名服务器的问题,我从正面说出了不可能,你从反面说出了可能。也没什么可牛的
对于楼主
如果其他客户将他的DNS Server设定为你的DNS Server时那么他们就会遵从你的DNS上的记录进行域名——〉IP的解析

如果这是个伪dns服务器,这基本上只能欺骗你子网下的dns客户端

如果他们把DNS服务器都设为我自己的服务器,而且我的服务器不允许向上级查询。那么我的客户就只能使用我自己的一套DNS咯?----那么你的dns必须能解溪所有域名,先别管解析出来的对不对,但是这基本不可能,世界上没有一台dns服务器能解溪出所有域名,因为dns数据库是分布的,
你的一句话虽然是概括了,但是新人还是不明白你的意思的。详细的说明一下没什么坏处吧?。呵呵。。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-8-26 13:41:19 | 显示全部楼层
我明白了,谢谢各位!
回复 支持 反对

使用道具 举报

发表于 2006-8-27 21:13:02 | 显示全部楼层
Post by aleng
orphen 那有多少个杈亚,你别以为别人都不行就你行,你有什么行得?
我这一句话 “dns是一种把域名翻译成ip的软件,dns就像一棵域名树 ”就概括了你发的域名解析过程,你发的那个 大多数 dns教程上都有。哪有什么了。

对于伪域名服务器的问题,我从正面说出了不可能,你从反面说出了可能。也没什么可牛的
对于楼主
如果其他客户将他的DNS Server设定为你的DNS Server时那么他们就会遵从你的DNS上的记录进行域名——〉IP的解析

如果这是个伪dns服务器,这基本上只能欺骗你子网下的dns客户端

如果他们把DNS服务器都设为我自己的服务器,而且我的服务器不允许向上级查询。那么我的客户就只能使用我自己的一套DNS咯?----那么你的dns必须能解溪所有域名,先别管解析出来的对不对,但是这基本不可能,世界上没有一台dns服务器能解溪出所有域名,因为dns数据库是分布的,

我并没有觉得“别人都不行就你行”。
我目前在一所高校管理校园网,大概1500+多个点,接触的网络设备和服务器都不少。但是我仍然处于学习当中。
我仅仅是将我自己的理解认识,尽可能详细地、形象的,讲解给想学习的人听,使他们少走弯路。
aleng大可不必如此生气。
回复 支持 反对

使用道具 举报

发表于 2006-8-27 23:05:51 | 显示全部楼层
真是没有必要斗嘴。

我的理解是:

如果你控制了铁路,那么你就可以随意写站名。

你可以将“北京西”这个站名用“沈阳北”来表示,因此尽管大家都明白是要到(东经xxx,北纬yyy)这个地理位置去,也只能去买 “沈阳北” 的车票。

东经xxx,北纬yyy 就是 IP
北京西  沈阳北  就是 域名


至于说分布式数据库的同步问题,应该有它自己的同步机理,也不是一两句话就可以说清楚,应该去找一本相应的书看看。


通俗一点,比如说,你想让一个学校的学生按照某些方式站排,你是一个一个的去交代呢,还是把站排的方式告诉每个班的老师,然后让老师去组织呢,我想你肯定会选择后者。

DNS服务就是这样,根--一级域名--二级域名--三级域名.....,一层套一层,所有下层的都归自己的上级领导。

如果负责 .com 的所有服务器都坏了,那么你就无法解析出www.cctv.com的IP(你的DNS服务器中有缓存除外),如果负责.org的所有服务器都坏了,也就不能解析出www.linux.org这个域名的IP了(当然了,你的DNS服务器中有缓存除外。)

而在设立DNS服务器的时候,都是需要提供根服务器的IP的,也就是一个文件,包含了所有根服务器的IP(也就10来个吧),然后你的DNS服务器才可以正常工作,解析到形形色色的域名所对应的IP。如果你自己随便设置一个域名到IP的对应,它并不能发布出去,这样只有通过你的DNS服务器来解析IP的客户端才会得到这个 名字与IP的对应,因此并不会导致冲突,只是你的客户被误导而已。

当然,如果你是一个大的ISP,下面有很多客户,这样造成的影响还是比较大的。比如你控制了网通的DNS服务器,那么你将域名和IP的记录乱改一通的话,造成的影响还是很大的。
回复 支持 反对

使用道具 举报

发表于 2006-8-28 11:54:47 | 显示全部楼层
如果你真的不和别人(互联网上的你管不了的人)连的话设什么都无所谓,如果你想有一个域名并且想让别人访问自己就得有一个域名,这个名字由你申请的上一级负责把这个名字解析到你,你还可以在你的下面建名再去解释
如果你设置了你的上级和你自己你就不可能解析出cctv.com因为它不归你解析,.com会解析它,你只能解析到cctv.aaa.com,因为别人怎么设置DNS你管不了,如果你自己设置了一个,没有人会问你cctv.com在哪,因为它们自己都知道去.com问,除非你自己建立一个DNS并且让全世界的人都设置成你自己(也不是没有先例,中文域名就把那些东西都解析到自己身上了)
回复 支持 反对

使用道具 举报

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

本版积分规则

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