中国网管论坛's Archiver

冰梦 发表于 2006-9-29 17:22

局域网内架设DNS服务器要谨慎

DNS(Domain Name Server)是一个巨大的分布式数据库,它通过域名服务器提供一个指定域的信息来实现域名的解析,域名服务器负责将域名转换为IP地址。将Internet中的所有域名信息都放在同一台计算机中是不可能的,因此DNS系统采用树形结构,将不同层次域的域名信息分别存储在不同的域名服务器中,最高层为根域服务器。  
  由于企业办公需要,笔者在局域网内部署了DNS服务器,所有客户机上的DNS服务器地址参数都设置为该服务器的IP地址。并且还在DNS服务器中新建了一个名为"knowsky.com"的域,供企业员工访问内部网站需要。  

  但经测试,用户可以正常访问企业内部网,但访问Internet上的网站时就会出现问题。笔者将客户机的DNS服务器地址修改为公网DNS服务器的IP地址后,就可访问Internet上的网站,但又不能访问企业内部网站了。然而,为了节省经费,"knowsky.com"域并没有在公网的DNS服务器上进行注册,只能靠企业网内部DNS服务器进行解析,难道没有一个两全其美的办法吗?  

分析  

  DNS(Domain Name Server)是一个巨大的分布式数据库,它通过域名服务器提供一个指定域的信息来实现域名的解析,域名服务器负责将域名转换为IP地址。将Internet中的所有域名信息都放在同一台计算机中是不可能的,因此DNS系统采用树形结构,将不同层次域的域名信息分别存储在不同的域名服务器中,最高层为根域服务器。  

  如要解析名为knowsky.com的域名,客户机首先要与本地域名服务器联系,如果查不到该域名信息,本地域名服务器会向根域服务器发送一个请求,查询knowsky.com的IP地址,根域服务器发现该域名不属于自己的管辖区,而是属于net下的一个域,它就会通知域名服务器联系net域的域名服务器以获得更多的信息,并发给本地域名服务器一个所有net域名服务器的地址列表。接着本地域名服务器会继续向这些服务器发送解析请求,直到找到knowsky.com域所属的域名服务器并将knowsky.com的IP地址信息返回给客户。  

  由于笔者在局域网内的DNS服务器中创建了根域和net域,所以当DNS服务器收到不能解析的域名时,会错误地认为自己就是根域服务器,而无法找到Internet中真正的根域服务器,因此就会出现客户机不能使用域名访问网站的问题。  

  解决办法  

  首先在DNS服务器中删除根域、net域和knowsky.com域,然后再重新创建一个knowsky.com域,创建这个域是为了让客户机能够正常访问企业内部网站。同时注意除了企业内部网站所必须的域以外,应该尽量少创建域,防止DNS服务器错误解析域名或无法解析。

kandyzhu 发表于 2007-2-18 21:32

看看先

swzz 发表于 2007-2-21 08:39

学习以下

jenson 发表于 2007-5-14 21:01

thank you

atahappy 发表于 2007-6-16 16:08

又学到东西啦..谢谢:loveliness:

tglbw 发表于 2007-6-19 19:28

回复 #1 冰梦 的帖子

遇到一个示例

monkeyhero 发表于 2007-10-29 20:09

呵呵,学习

shanghai11 发表于 2007-12-26 13:53

知识收下了,谢谢楼主的分享。:PP:

tmacyao 发表于 2007-12-28 20:37

学习了:handshake

页: [1]

Powered by Discuz! Archiver 6.1.0  © 1999-2008 bbs.bitsCN.com