一起学DNS系列(十五)DNS查询工具之NSLOOKUP的使用

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://jeffyyko.blog.51cto.com/28563/259092
   上一节里我们讨论了有关DIG工具的用法,本节将对windows下nslookup工具的一些主要命令进行描述。
    nslookup是多数win系统中的一个内置命令,主要目的是用来测试域名解析,属于命令行工具,顺利工作的前提是已正常安装了Tcp/Ip协议簇。
   打开CMD的命令行界面,在不填写任何参数的情况下使用此命令,如下图:
一起学DNS系列(十五)DNS查询工具之NSLOOKUP的使用
如上图,输入nslookup后,返回了当前的DNS服务器的名称以及对应的IP,其实,这一步骤的根本原理是对202.96.134.133这个IP的反向查询。如下图:
一起学DNS系列(十五)DNS查询工具之NSLOOKUP的使用
上图为与该操作同步产生的数据抓包图,实质是反向查询DNS的服务器名称。
当在nslookup后面加上名称或IP时,系统依然会执行一次反解,也就是重复上述过程,然后再对后面的内容进行解析。比如输入nslookup ns.szptt.net.cn ,如下图:
一起学DNS系列(十五)DNS查询工具之NSLOOKUP的使用
为了便于分析,我把结果图和协议分析过程两者结合起来进行分析,大家可以清楚的看到,nslookup在解析字符串(也可能是域名)的整个过程。
如上所述,如果我们设置一个主机的DNS后缀,如下图:
一起学DNS系列(十五)DNS查询工具之NSLOOKUP的使用
大家可以看到,.domain被替换成11.com,即设定的主机DNS后缀。
我们也利用nslookup命令解析IP对应的主机或域名名称。如下图:
一起学DNS系列(十五)DNS查询工具之NSLOOKUP的使用
除此之外,还可以有其他的命令方式,如下图:
一起学DNS系列(十五)DNS查询工具之NSLOOKUP的使用
或者是
一起学DNS系列(十五)DNS查询工具之NSLOOKUP的使用
但要注意的是,在查询cname记录的时,后面需要一个完整的地址,而不是域名。
除此之外,还可以使用其他方式查询A记录或者其他域名记录。如下图:
一起学DNS系列(十五)DNS查询工具之NSLOOKUP的使用
当需要查询一个域名的TTL值时,我们就需要用到 -d  这个参数了,如下图:
一起学DNS系列(十五)DNS查询工具之NSLOOKUP的使用
上面所有的解析记录都来自默认的DNS服务器,即ns.szptt.net.cn上的非权威回复,关于何为非权威回复,在以前的章节中有描述,此处不多说。其实我们可以修改当前的响应服务器,也就是说可以利用nslookup的server命令来选定一个NS服务器来负责解析我们的请求,最近google公布了一组免费的DNS服务器,即8.8.8.8和8.8.4.4,
我们就用第一个来测试一下,如下图:
一起学DNS系列(十五)DNS查询工具之NSLOOKUP的使用
第二个DNS测试结果雷同,只是server变成了google-public-dns-b.google.com而已。

原创文章,作者:s19930811,如若转载,请注明出处:http://www.178linux.com/1112

(0)
上一篇 2015-03-17 14:48
下一篇 2015-03-17 16:03

相关推荐

  • 第九周-Shell脚本编程

      1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash nologin=0 login=0 for i in `cut -d : -f 7 /etc/passwd`;do if [ $i = /sbin/n…

    Linux干货 2017-08-23
  • ​Linux 硬连接与软连接的区别

        Linux 硬连接与软连接的区别                        &…

    Linux干货 2016-10-25
  • 第四周练习

    1.复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其他用户均没有任何访问权限。         # cp -r /etc/skel /home/tuser1      &nb…

    Linux干货 2016-11-18
  • keepalived高可用双主lvs-dr模型集群

    环境 centos6.8 在keepalived服务器上安装keepalived RS服务器上安装nginx ,安装过程省略 为了便于实验,四台机器将关闭iptables和selinux 配置如下: K1: #修改keepalived配置文件 vim /etc/keepalived/keepalived.conf ! Configuration File f…

    2017-05-13
  • 源码包安装Apache服务

    1、安装development tools程序包组 安装Apache服务器前需要解决依赖性问题,比如需要安装GCC、GCC++、OPENSSL等等,因为是在虚拟机里做实验,这里就通过直接安装包组的方法解决依赖性问题。 (1)挂载安装光盘,并安装“Development tools”包组 [root@localhost ~]# mount&…

    Linux干货 2016-08-24
  • 程序包管理之YUM解析

    前言:    yum是rpm的前端程序,用来解决软件包相关依赖性,可以在多个库之间定位软件包,如果直接使用rpm直接安装程序包也可以,但是需要自己手工解决程序包依赖性的问题,可能程序包的依赖性非常复杂,那么直接使用rpm安庄,就会非常麻烦,而使用YUM安装就会自动解决依赖性的问题。大大简化了安装过程。  YUM客户端配置文件: …

    Linux干货 2016-08-24