将域名解析到IP
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
如果你们的局域网是通过DHCP自动获取IP地址,请在服务器上将DHCP分配地址有效时间改为尽量少的数字,默认8天.
DNS服务器也设为服务器地址.
这样的话网络地址就由本地解析.
开始讨论如何排除DNS问题之前,我们想知道你是否清楚怎样判断某个问题是由DNS而不是由别的命名服务造成的。在Windows主机上,判断问题的原因是否真的出在DNS上可是件困难的事。Windows支持的命名服务真是名目繁多:如DNS、Wins、HOSTS、LM HOSTS等数不胜数。然而常用的Windows 2000 nslookup 却全然不理会其他这些命名服务。你可能会只顾在Windows 2000计算机上运行nslookup和查询名称服务器,而有问题的服务却可能在使用另一种不同的命名服务。首先,你需要考虑是哪一类程序出了问题,如果是TCP/IP客户端,如telnet或ftp,那么问题可能出在DNS和HOSTS文件上。如果是一个支持NetBIOS命名的实用程序,如net(与在net use中一样)中,那么值得怀疑的还要包括Wins和LMHOSTS文件。其他也使用DNS名称或NetBIOS名称作为参数的客户端(如ping)也会使用这些命名服务中的任意一种。接下来,再考虑Windows使用这些命名服务的顺序。在查找问题时,应按照此顺序检查各种服务。这些提示对你查出问题的症结会有帮助,至少可帮你排除一个怀疑对象。
如果要检查一个服务器的缓存区,请单击DNS控制台左窗格中该服务器名称左边的加号。你将看到一个名为Cached Lookups的文件夹。单击其左边的加号或双击文件夹图标或标签以展开下一级。这样可显示出你的名称服务器已为其缓存了数据的那些顶级域。继续展开,直至看到你要查看的缓存数据所在的那一域名。如我们的名称服务器已为缓存了三条NS记录和一条A记录。如果依次双击net和hp,我们还会看到这些名称服务器的缓存地址。如果想看缓存数据上的TTL,请双击右窗格中的一条记录。若DNS 控制台处于高级查看模式(选择查看> 高级),则出现的窗口将显示出该记录的TTL。在检查TTL 之前,一定要用操作> 刷新或用F5 键刷新DNS 控制台,否则你看到的TTL
可能会大于当前TTL。如果右键单击该记录,你可能会注意到有一个删除记录选项。
DNS的一些常见的错误
1. 忘记增加序列号
在你未使用DNS 控制台而是用手动方式更改区域数据文件时,就会出现一些问题。DNS 控制台在它每次更改区域数据时都会记着在SOA 记录中增加序列号,所以你不必为此操心。不过,这也意味着你可能不会养成更新序列号的习惯,所以在进行一次性手动修改时,你可能会忘记增加序列号。此问题的主要症状是,从属名称服务器不会获得你在主服务器上对该区域做的任何更改。从属服务器认为区域数据并未更改,因为它看到的序列号仍是原来的序列号。该怎样检查当时是否记着增加序列号呢?不幸的是,这就不是那么容易了。如果你不记得原序列号是什么,而现在的序列号不能表明它是什么时候更新的,则没有直接的方
法判断它是否已更改。在启动主服务器时,不管你是否更改了序列号,它都将加载更新后的区域数据文件。最好的办法只能是使用nslookup 来比较主服务器和从属服务器返回的数据。如果它们返回不同的数据,则表明你可能忘了增加序列号。如果你能想起最近作的一次更改,则可以查看此数据。如果记不起最近一次作的更改,则可以从一个主服务器和一个从属服务器复制该区域,将结果排序并使用文件比较工具将它们加以比较。还有一个好消息,即,尽管确定该区域此前是否已复制比较难,但现在要确保该区域被复制却非常简单。只须在DNS 控制台中双击SOA 记录并手动编辑序列号字段,增加主服务器上此区域的副本中的序列号即可。从属服务器将在刷新时间间隔内获得此新的数据,如果它们用了NOTIF Y,则会更快。
2. 以手动方式更改DNS服务器
要记住Microsoft DNS 服务器会定期更新其区域数据文件。每次用DNS 控制台对一个区域的数据进行更改时,就有一个写操作挂起:在DNS 服务器退出之前,它必须重写该区域的数据文件,否则它就会丢失你所作的更改。可以将此比作内存中一个已更新的页:操作系统在退出之前必须将它写到磁盘上。如果你在一个写操作挂起期间对一个区域数据文件作了手动更改,则在名称服务器退出后你会莫名其妙地丢失所作的更改。比如你在服务器正在运行且有一个写操作挂起时向一个名为的新子域添加了委派。作完更改后,你必须将服务器停下并再次启动,以让它再次读取该区域数据。但是在服务器退出时,它将重写区域数据文件,你的委派于是就会丢掉。如果仔细观察(平时就需要这样)事件查看器,会在服务器停止事件之前看到这样一条消息:The DNS server wrote version 37 of zone to file .dns.(DNS 服务器写入区域的版本37 到文件.dns。)如果你用操作| 更新服务器数据文件来强制服务器重写其区域数据文件,则服务器就会与区域数据文件同步,而不必在退出时重写。所以,如果要对区域数据文件作手动更改,那么要么首先停止服务器(但这意味着在你作更改期间服务器将不响应任何查询),要么使用DNS 控制台将服务器与区域数据文件同步,然后再进行更改。
3. 从属服务器无法加载区域数据
如果一个从属服务器无法从其主控服务器获取某个区域的当前序列号,那么最初它是不会给你发警告消息的。然而,如果该问题一直存在而且从属服务器在有效期时间内无法确定其数据是否是最新的,那么该区域就会过期。在一个Microsoft DNS 服务器上,你将在事件查看器中看到与下文类似的一条消息:在获得成功区域复制或从这个区域作为其源的主服务器获得成功区域复制之前区域就超时了,该区域已经被关闭。区域过期后,当你向名称服务器查询该区域中的数据时,就会收到SERVFAIL 错误消息:
C:> nslookup robocop .
Server:
Addresses: 207.46.230.219, 192.253.253.1
can‟t find : Server failed
出现此问题的原因主要有三个:由于网络故障与主控服务器的连接断开,为主控服务器配置的IP 地址不正确,主控服务器上的区域数据文件中有语法错误。首先,应使用DNS 控制台检查该从属服务器在尝试从中加载数据的那一(些)主控服务器的地址。右键单击左窗格中该区域的域名,选择属性,然后查看常规选项卡,确认它是否真是主名称服务器的IP 地址。如果是,请检查到此IP 地址的连接:C:> ping 207.46.230.219
Pinging 207.46.230.219 with 32 bytes of data:
Request timed out.
Request timed out.
Request timed out.
Request timed out.
如果无法连接到主控服务器,请确定该服务器的主机是否真的在运行(例如,已通电),或检查网络问题。你可能还需要检查主控服务器对该区域中数据的查询是否返回权威性响应。如果主控服务器的响应对于该区域不是权威性的,则从属服务器就不从该主控服务器中复制此区域。可使用nslookup 检查主控服务器的对于区域的SOA 记录的权威性响应,命令格式如下:
C:> nslookup -norec -type=SOA . 207.46.230.219
此命令向位于地址152.104.1.6 的名称服务器发送一个非递归查询,以查询microsoft.co m的SOA 记录。我们必须发送非递归查询,这样位于152.104.1.6 的名称服务器就不会将该查询转发给另一个服务器。如果将此主控服务器配置正确,则对此查询的响应就应是权威性的。(记住,除非nslookup 返回了“非权威性”响应,否则响应就是权威性的。)非权威性的响应可能表明主控服务器在加载该区域时发生问题,通常是由于区域数据文件中存在语法错误。请与该主控服务器的管理员联系,让他检查其事件查看器或系统日志的输出中是否有表明出现语法错误的消息。我们从来还没有见到过Windows 2000 名称服务器因为区域数据文件中有语法错误而对于此区域失去非权威性的情况,但旧的BIND 名称服务器确实会表现出这种现象。所以,如果你的名称服务器是某一区域的从属服务器,而此区域的主要主名称服务器是BIND 名称服务器,该服务器现在对该区域不具有权威性,那么问题可能就是一个语法错误。如果对查询的响应是权威性的但从属服务器仍无法成功复制该区域,那么你可以使用nslookup的ls命令来手动复制该区域。如果看到类似于下面的错误消息,则很可能是主控服务器限制区域复制:
C:> nslookup - 152.104.1.6
Default Server:
Address: 152.104.1.6
> ls