局域网内架设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服务器错误解析域名或无法解析。

(0)

相关推荐

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

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

  • Node.JS中快速扫描端口并发现局域网内的Web服务器地址(80)

    在 Node.JS 中进行端口扫描还是比较方便的,一般会有广播和轮询两种方式.即使用广播和扫描,使用广播发出的消息有时会被路由器屏蔽,所以并不可靠. 使用node.js中的net模块,可以直接尝试向目录主机的某个端口进行连接,如果能建立连接,则说明该地址存在服务器. var socket = new Socket() socket.connect(port, host) socket.on('connect', function() { //找到port 和 host 地址 }) 所以只要进行2

  • FreeBSD6.1Release下利用BIND架设DNS服务器的方法

    通过此服务器,使内网用户能正常访问INTERNET,这里我们使用FreeBSD自带的BIND来实现DNS的解析,事实上INTERNET上很多DNS都使用了这个软件.基本的操作步骤如下: ◇ DNS父域(edu.cn)给我的信息如下:域 -> wxicab.edu.cnDNS主服务器 -> 58.193.128.55 [dns1.wxicab.edu.cn]DNS辅服务器 -> 58.193.128.56 [dns2.wxicab.edu.cn](本笔记中只架设主服务器的配置过程) ◇ 网

  • Win10搭建FTP服务器实现局域网内访问

    本文为大家分享了Win10搭建FTP服务器实现局域网内访问的具体实现方法,供大家参考,具体内容如下 前言 遇到办公网络差的不行,微信发个文件起步10分钟,这谁受得了. 步骤 1.控制面板–程序–程序和功能–启用或关闭windows功能 2.在“windows功能”中找到以下选项: 3.Internet Information Services,展开,选中“FTP服务器”下的“FTP服务”.“FTP扩展性”,以及“Web管理工具”下的“IIS管理控制台”,点击“确定”. 4.在电脑开始按钮右边的搜

  • 使用Java代码获取服务器性能信息及局域网内主机名

    最近做个项目,就是要取得cpu占有率等等的系统信息,一开始以为要用动态链接库了,但后来发现可以像下面这样做,不去调用jni,这样省去了很多看新技术的时间o(∩_∩)o... 在Java中,可以获得总的物理内存.剩余的物理内存.已使用的物理内存等信息,下面例子可以取得这些信息,并且获得在Windows下的内存使用率.      首先编写一个MonitorInfoBean类,用来装载监控的一些信息,包括物理内存.剩余的物理内存.已使用的物理内存.内存使用率等字段,该类的代码如下: package c

  • winmydns DNS服务器架设

    一.您必须有一个属于您自已的域名.比如:abc.com.没有域名的必须先注册一个域名. 二.在国际域名中心注册一个DNS域名,以使您的DNS服务器在全球有效. 1.在域名注册商(如新网,新网互联)的域名控制面板里一个"注册本域名下的DNS"的功能. 2.点击进去添加两个DNS,如ns1.abc.com及ns2.abc.com,IP地址填写您的安装winmydns的服务器IP地址. 3.在 http://www.internic.com/whois.html页面填入您的DNS域名,如ns

  • Win 2003架设邮件服务器

    很多企业局域网内都架设了邮件服务器,用于进行公文发送和工作交流.但使用专业的企业邮件系统软件需要大量的资金投入,这对于很多企业来说是无法承受的.其实我们可以通过Windows Server 2003提供的POP3服务和SMTP服务架设小型邮件服务器来满足我们的需要. 一.安装POP3和SMTP服务组件 Windows Server 2003默认情况下是没有安装POP3和SMTP服务组件的,因此我们要手工添加. 1.安装POP3服务组件 以系统管理员身份登录Windows Server 2003

  • 用 Win2003 架设邮件服务器 图文详解

    其实我们可以通过Windows Server 2003提供的POP3服务和SMTP服务架设小型邮件服务器来满足我们的需要. 一.安装POP3和SMTP服务组件 Windows Server 2003默认情况下是没有安装POP3和SMTP服务组件的,因此我们要手工添加. 1.安装POP3服务组件 以系统管理员身份登录Windows Server 2003 系统.依次进入"控制面板→添加或删除程序→添加/删除Windows组件",在弹出的"Windows组件向导"对话框

  • 如何解决局域网内mysql数据库连接慢

    通过内网连另外一台机器的mysql服务, 确发现速度N慢! 等了大约几十秒才等到提示输入密码.  但是ping mysql所在服务器却很快!  想到很久之前有过类似的经验, telnet等一些服务在连接请求的时候,会做一些反向域名解析(如果反向解析不顺畅, 估计就会延迟很多,  给人的感觉是连接速度N慢!)     在网上搜索了下解决办法, 发现有两种:   一. 两边机器配置的resolve.conf不一样, 把resolve.conf配置成速度比较快的DNS就OK 二. 把mysql配置中的

  • 教你如何架设个人服务器——全教程

    看到别人精美的个人主页,你一定会有所心动,而如今免费资源却是越来越少,往往你花大量时间去寻找免费主页空间时,最后却因它们的不稳定而给自己带来一些遗憾.此外,在信息社会中,我们经常需要转移.暂存一些文档和资料,或与别人实现文件共享,FTP服务会经常作为我们的最佳信息传输方式.但在很多时候,当我们来回穿梭于那些免费的FTP服务器时,却因为苦于没有匿名帐号或人数过多而不能正常登录.其实,我们完全可以避开这些尴尬,全力打造一个属于自己的个人服务器,从此不再搭便车,开始体会拥有的快感!下面随我一起开始个人

随机推荐