Nslookup命令的使用 - [详细]
用法一、查询IP地址
nslookup最简单的用法就是查询域名对应的IP地址,包括A记录和CNAME记录,如果查到的是CNAME记录还会返回别名记录的设置情况。其用法是:
nslookup 域名
# 示例
>nslookup www.baidu.com
服务器: cache-a.guangzhou.gd.cn
Address:  *.*.*.*
非权威应答:
名称:    www.a.shifen.com
Addresses:  14.215.177.39
          14.215.177.38
Aliases:  www.baidu.com
nslookup命令会采用先反向解释获得使用的DNS服务器的名称。
如果域名不存在会怎样呢?
>nslookup www.alksdjlk.com 服务器: cache-a.guangzhou.gd.cn
Address: *.*.*.* *** cache-a.guangzhou.gd.cn 找不到 www.alksdjlk.com: Non-existent domain
如果域名不存在,则会会等待一段比较长的时间,然后提示"Non-existent domain"(不存在的域名)
查询其他类型的域名
前面两个命令我们没有加任何参数,所以默认情况下nslookup查询的是A类型的记录。如果我们配置了其他类型的记录希望看到解释是否正常。这时候ping就无能为力了。比如我们配置了MX记录,但是邮件服务器只能发信不能收信,到底是域名解释问题还是其他的问题Ping命令的检查只能让你误入歧途。nslookup 这时候可以模拟你的其他服务器进行域名解释的情况。我们需要在nslookup上加上适当的参数。指定查询记录类型的指令格式如下:
nslookup –qt=类型 目标域名
注意qt必须小写。
类型可以是一下字符,不区分大小写:
  A 地址记录(Ipv4)
  AAAA 地址记录(Ipv6)
  AFSDB Andrew文件系统数据库服务器记录(不懂)
  ATMA ATM地址记录(不是自动提款机)
  CNAME 别名记录
  HINFO 硬件配置记录,包括CPU、操作系统信息
  ISDN 域名对应的ISDN号码
  MB 存放指定邮箱的服务器
  MG 邮件组记录
  MINFO 邮件组和邮箱的信息记录
  MR 改名的邮箱记录
  MX 邮件服务器记录
  NS 名字服务器记录
  PTR 反向记录(从IP地址解释域名)
  RP 负责人记录
  RT 路由穿透记录(不懂)
  SRV TCP服务器信息记录(将有大用处)
  TXT 域名对应的文本信息
  X25 域名对应的X.25地址记录
>nslookup -qt=mx qq.com 服务器: cache-a.guangzhou.gd.cn
Address: *.*.*.* 非权威应答:
qq.com MX preference = 10, mail exchanger = mx3.qq.com
qq.com MX preference = 30, mail exchanger = mx1.qq.com
qq.com MX preference = 20, mail exchanger = mx2.qq.com qq.com nameserver = ns1.qq.com
qq.com nameserver = ns4.qq.com
qq.com nameserver = ns2.qq.com
qq.com nameserver = ns3.qq.com
mx1.qq.com internet address = 14.215.140.20
ns2.qq.com internet address = 123.151.66.78
ns2.qq.com internet address = 203.205.177.41
ns2.qq.com internet address = 121.51.160.100
ns3.qq.com internet address = 183.192.201.116
ns3.qq.com internet address = 112.60.1.69
ns4.qq.com internet address = 203.205.221.79
ns4.qq.com internet address = 58.144.154.100
ns4.qq.com internet address = 59.36.132.142
ns4.qq.com internet address = 125.39.46.125
ns1.qq.com internet address = 101.89.19.165
ns1.qq.com internet address = 157.255.246.101
ns1.qq.com internet address = 183.3.226.207
mx2.qq.com AAAA IPv6 address = 2408:8756:3af0:10::102
mx1.qq.com AAAA IPv6 address = 2402:4e00:8010::af
上面是一个MX命令的使用,可以查询出域名的邮箱服务器记录
nslookup把服务器的名称和地址都给出来了,注意preference就是前面所说的优先级,该数值越小则优先级越高。
指定使用的名字服务器
在默认情况下nslookup使用的是我们在本机TCP/IP配置中的DNS服务器进行查询,但有时候我们需要指定一个特定的服务器进行查询试验。这时候我们不需要更改本机的TCP/IP配置,只要在命令后面加上指定的服务器IP或者域名就可以了。这个参数在我们对一台指定服务器排错是非常必要的,另外我们可以通过指定服务器直接查询授权服务器的结果避免其他服务器缓存的结果。命令格式如下:
nslookup [-qt=类型] 目标域名 指定的DNS服务器IP或域名

这个命令直接从顶级域名服务器查询域名的NS记录。所有的二级域名的NS记录都存放在顶级域名服务器中,这是最权威的解释。注意这次没有非授权结果的提示。对于二级域名的NS记录查询来说这肯定是授权结果。当我们修改域名的NS记录的时候可以通过上述查询知道修改的结果是不是已经在顶级域名服务器上生效。不过即使已经生效也可能不能正常解释,存在缓存。
那么到底缓存多久呢?
检查域名的缓存时间
检查域名的缓存时间需要我们使用一个新的参数:-d
格式如下:
nslookup –d [其他的参数] 目标域名 [指定的服务器地址]

我们忽略其他的看看Got answer后面几行,包括了一个ttl数值。这个数值就是域名记录的生存时间。
这种查询将整个DNS数据包的所有部分都揭示出来,大家可以看到DNS实际上并不是想象中那么简单的东西。具体的各部分解释大家可以去看看相关的标准文档。需要提醒大家的是一定要找到ANSWER:的内容,其他的东西都不是描述最终的结果。上面就不止一个地方又TTL数值。
域名解释过程的模拟
我们现在来模拟一下一台DNS服务器接到一个不是自己管理的域的域名解释过程。回忆一下第一篇文章的过程:
首先我们会询问根服务器,然后根服务器会让我们去找对应的顶级服务器。如果查询的是oray.net,就会要求我们去找net的服务器。
这里我们让21cn.com的服务器解释www.oicp.net的域名,很显然这台服务器不用有这个域,需要询问根服务器。一般情况下DNS服务器会帮我们完成全部的过程。这种解释方式我们称之为递归解析,为了让大家看到这个过程我家了一个参数让21cn.com的服务器不要这样做。这个参数是-norecurse。这样理论上21cn.com会让我们去问根服务器,不过由于它已经缓存了顶级服务器的记录,所以直接返回了管理net的顶级服务器记录。实际上大部分的查询都不需要从根服务器开始。大家看到了所有的顶级域名服务器的地址都被返回。
我们随便选择一个在进行查询。

这次顶级服务器就返回了oicp.net的服务器地址记录的。然后我们就向这些记录之一进行查询,一定能够得到答案。可能是一个地址、一个CNAME记录或者告诉你不存在。
nslookup的命令就介绍到这里,其实nslookup还有许多其他参数。不过常用的就俄这么几个,另外如果大家不喜欢命令行方式的话。还有几个图形界面的nslookup功能的工具。不过大家还是需要了解域名解释都有些什么才能够正确使用这些工具。
Nslookup命令的使用 - [详细]的更多相关文章
- (转)Linux命令:使用dig,nslookup命令解析域名
		Linux命令:使用dig命令解析域名 Linux下解析域名除了使用nslookup之外,开可以使用dig命令来解析域名,dig命令可以得到更多的域名信息. dig的全称是 (domain infor ... 
- Windows Server 2008 R2 域控服务器运行nslookup命令默认服务器显示 UnKnown
		一.问题: 域控服务器DOS窗口运行nslookup命令提示如下: 二.原因分析: 主要原因在于域控服务器的DNS服务器没有设置反向查找区域,计算机名称是通过IP地址反向查找到域控服务器的计算机名称. ... 
- nslookup命令
		nslookup命令可以从本地DNS服务器中查看所有的IP地址和域名信息(它就像一本互联网电话簿).例如,想要找到www.baidu.com的IP地址就可以使用nslookup命令. nslookup ... 
- nslookup命令详解
		Nslookup 是一个监测网络中DNS服务器是否能正确实现域名解析的命令行工具.它在 Windows NT/2000/XP(在之后的windows系统也都可以用的,比如win7,win8等) 中均可 ... 
- Nslookup命令小结
		Nslookup命令小结 0.nslookup的定义 Nslookup是由微软发布用于对DNS服务器进行检测和排错的命令行工具. 两种模式: 一.非交互模式 nslookup –qt=类型 ... 
- doc命令大全(详细版)
		doc命令大全(详细版) 1 echo 和 @回显命令@ #关闭单行回显echo off #从下一行开始关闭回显@echo ... 
- NSLOOKUP命令的使用方法
		查询IP地址 nslookup最简单的用法是查询域名对应的IP地址,包括A记录.MX记录.NS记录CNAME记录. 查询A记录:nslookup 域名 查询MX记录:nslookup -q=mx 域名 ... 
- nslookup命令详解【转】
		转自:http://blog.chinaunix.net/uid-28933499-id-3750357.html NSlookup命令的用法 用了域名服务器后,经常要查询域名的解析情况,nslook ... 
- nslookup命令查找域名
		了解 DNS 域名服务 熟悉使用 nslookup 查找 DNS 服务器上登记的域名,记录几次查询的结果, 及服务器的 ip. 1. 某个子域下的一部分主机的名字- IP 地址对应关系,如 flame ... 
随机推荐
- 我深爱的Java,对不起,我出轨了!!!呸!渣男!
			我对Java情有独钟 大学三年来,我主学的编程语言一直是Java,为了学好它,我付出了很多心血.现在回想,确实是Java改变了我,造就了我. 因为Java,我自愿在学校组织学弟学妹,给他们讲解Java ... 
- cb39a_c++_STL_算法_for_each_transform_比较
			cb39a_c++_STL_算法_for_each_transform_比较for_each() 速度快,不灵活transform() 速度慢, 非常灵活 STL算法-修改性算法for_each()c ... 
- 【String注解驱动开发】你了解@PostConstruct注解和@PreDestroy注解吗?
			写在前面 在之前的文章中,我们介绍了如何使用@Bean注解指定初始化和销毁的方法,小伙伴们可以参见<[Spring注解驱动开发]如何使用@Bean注解指定初始化和销毁的方法?看这一篇就够了!!& ... 
- Python3-gevent模块-单线程下的"并发"-协程
			博客转载 http://www.cnblogs.com/alex3714/articles/5248247.html http://www.cnblogs.com/tkqasn/p/5705338.h ... 
- Spring源码系列(二)--bean组件的源码分析
			简介 spring-bean 组件是 Spring IoC 的核心,我们可以使用它的 beanFactory 来获取所需的对象,对象的实例化.属性装配和初始化等都可以交给 spring 来管理. 本文 ... 
- Spring AOP学习笔记05:AOP失效的罪因
			前面的文章中我们介绍了Spring AOP的简单使用,并从源码的角度学习了其底层的实现原理,有了这些基础之后,本文来讨论一下Spring AOP失效的问题,这个问题可能我们在平时工作中或多或少也会碰到 ... 
- nginx使用热部署添加新模块
			简介 当初次编译安装nginx时,http_ssl_module 模块默认是不编译进nginx的二进制文件当中,如果需要添加 ssl 证书.也就是使用 https协议.那么则需要添加 http_ssl ... 
- Docker(六)容器数据卷
			容器数据卷 docker的理念回顾 将应用和环境打包成一个镜像 需求:数据可以持久化和同步 使用数据卷 指定路径挂载 docker run -it -v 主机目录:容器内目录 # 测试 [root@h ... 
- 数据解析_xpath
			重点推荐这种解析方式,xpath是最常用且最便捷高效的一种解析方式,通用性 1.解析原理 1.实例化一个etree的对象,且需要将被解析的页面源码数据加载到改对象中. 2.调用etree对象中的xpa ... 
- HTML的<Object>标签怎么用?
			<object>标签是一个HTML标签,用于在网页中显示音频,视频,图像,PDF和Flash等多媒体:它通常用于嵌入由浏览器插件处理的Flash页面元素,如Flash和Java项目.它还可 ... 
