方法/步骤

 
  1.  

    查看本地dns配置。确保能上网,dns配置正确。可以查看网卡配置文件和dns配置文件,网卡里配置优先。

  2.  

    ping命令。第一行会返回域名及解析的ip。

  3.  

    host命令。会返回域名has ip 地址。

  4.  

    nslookup命令。输入命令后回车,在命令提示符输入域名,回车,就会显示域名的ip地址。

  5.  

    dig命令。会显示a记录即域名的解析。

  6.  

    dig命令可以trace解析过程,先访问13台根域root(.)服务器,其中一台根域服务器返回一级域名服务器(本例是.com.)的ip地址,一级服务器再返回二级域名服务器ip地址(本例  .baidu.com.)...... dig命令的其他参数,可以查看help。

     
     

    (1) /etc/hosts :记录hostname对应的ip地址

      /etc/resolv.conf :设置DNS服务器的ip地址

      /etc/host.conf :指定域名解析的顺序(是从本地的hosts文件解析还是从DNS解析)

    (2) DNS的查询指令:host、nslookup、dig,host 语法:

    host命令是常用的分析域名查询工具,可以用来测试域名系统工作是否正常。

    host(选项)(参数)

    -a:显示详细的DNS信息;

    -c<类型>:指定查询类型,默认值为“IN“;

    -C:查询指定主机的完整的SOA记录;

    -r:在查询域名时,不使用递归的查询方式;

    -t<类型>:指定查询的域名信息类型;

    -v:显示指令执行的详细信息;

    -w:如果域名服务器没有给出应答信息,则总是等待,直到域名服务器给出应答;

    -W<时间>:指定域名查询的最长时间,如果在指定时间内域名服务器没有给出应答信息,则退出指令;

    -4:使用IPv4;

    -6:使用IPv6.

    1 [root@localhost ~]# host www.linuxde.net 
    www.linuxde.net is an alias for host.1.linuxde.net. host.1.linuxde.net has address 100.42.212.8
    [root@localhost ~]# host -a www.linuxde.net Trying "www.linuxde.net" ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 34671 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;www.linuxde.net. IN ANY ;; ANSWER SECTION: www.linuxde.net. 463 IN CNAME host.1.linuxde.net. Received 54 bytes from 202.96.104.15#53 in 0 ms

    (3) Nslookup 语法:

    Nslookup [FQDN] [server]

    Nslookup

    参数说明:

    可以直接在nslookup后加上待查询的主机名称或者ip,【server】可有可无。

    如果在nslookup后面没有加上任何主机名称或ip,那将进入nslookup的查询功能。在nslookup的查询功能当中,可以输入其他参数来进行特殊查询,例如:

    Set type=any    :列出所有的信息

    Set type=mx    :列出与mx相关的信息

    (4) Dig 语法:

    Dig [@server] [FQDN] [type]

    参数说明:

    @server :如果不想以/etc/resolv.conf来作为dns主机,则可以在此填入其他的ip

    Type :预设是查询A记录,你可以在这里写入其他的记录,如:MX,NS等。

    此功能亦可使用[-t type]来处理。

    下面是 dig 的一些比较常用的命令:

    # dig 最基本的用法

    1 dig @server sina.com.cn.

    # 用 dig 查看 zone 数据传输

    1 dig @server zx.xmgd.com. AXFR

    # 用 dig 查看 zone 数据的增量传输

    1 dig @server zx.xmgd.com. IXFR=N

    # 用 dig 查看反向解析

    1 dig -x 210.52.83.228 @server

    # 查找一个域的授权 dns 服务器

    1 dig xmgd.com. +nssearch

    # 从根服务器开始追踪一个域名的解析过程

    1 dig xmgd.com +trace

    # 查看你使用的是哪个 F root dns server

    1 dig +norec @F.ROOT-SERVERS.NET HOSTNAME.BIND CHAOS TXT

    一般来说linux下查询域名解析有两种选择,nslookup或者dig,而在使用上我觉得dig更加方便顺手,如果是在debian下的话,只要装上dnsutils这个包就可以使用dig命令了,最基本的使用方式就是:

    1 dig www.baidu.com

    即查询域名的A记录,查询的dns服务器将采用系统配置的服务器,即/etc/resovle.conf 中的,如果要查询其他类型的记录,比如MX,CNAME,NS,PTR等,只需将类型加在命令后面即可

    1 dig www.baidu.com mx
    2 dig www.baidu.com ns

    此外,如果你是一个系统管理员,部署好了一台dns服务器之后想对它进行解析测试,就必须要显式指定待测试的dns服务器地址了,例如

    1 dig @180.97.33.107 www.baidu.com a

    默认情况下dig将采用udp协议进行查询,如果要采用tcp方式,可以加上 +tcp参数

    1 dig www.baidu.com a +tcp

    另外一个重要的功能是+trace参数,使用这个参数之后将显示从根域逐级查询的过程

    1 dig www.baidu.com a +trace

    比如,对本站域名www.linuxers.cn A记录的trace查询可以看到根域.,顶级域.cn,以及linuxers.cn的域名权威服务器的地址及其各自的返回结果,这样对于追踪dns解析中的问题有很大的帮助。

Linux如何用查看域名解析的更多相关文章

  1. Linux下如何查看版本信息

    Linux下如何查看版本信息, 包括位数.版本信息以及CPU内核信息.CPU具体型号等等,整个CPU信息一目了然.   1.# uname -a   (Linux查看版本当前操作系统内核信息)   L ...

  2. Linux下怎么查看当前系统的版本

    Linux下怎么查看当前系统的版本:   uname -r 功能说明:uname用来获取电脑和操作系统的相关信息. 语 法:uname [-amnrsvpio][--help][--version] ...

  3. 在windows和linux下如何查看80端口占用情况?是被哪个进程占用?如何终止等

    一.在windows下如何查看80端口占用情况?是被哪个进程占用?如何终止等 这里主要是用到windows下的DOS工具,点击"开始"--"运行",输入&quo ...

  4. Linux学习笔记——查看Linux系统信息的方法

    由于Linux的发行版本比较多,并且有些差异性,所以,分析问题时我们常常需要知道自己的Linux系统的版本信息,以下是我搜集到的一些方法 1:显示电脑以及操作系统的相关信息 qian@ubuntu:~ ...

  5. reinstall_xbt: Linux中如何查看文件的最初创建时间

    Linux中如何查看文件的最初创建时间 与文件相关的几个时间: 1.访问时间,读一次这个文件的内容,这个时间就会更新.比如对这个文件使用more命令.ls.stat命令都不会修改文件的访问时间.   ...

  6. Linux中如何查看文件的最初创建时间

    查看 一个文件的 最初创建时间: Linux中如何查看文件的最初创建时间  linux     目前Linux没有直接查看创建文件的命令,你只能通过文件是否被修改过来进行判断. //查看代码stat  ...

  7. 在linux下,查看一个运行中的程序, 占用了多少内存

    1. 在linux下,查看一个运行中的程序, 占用了多少内存, 一般的命令有 (1). ps aux: 其中  VSZ(或VSS)列 表示,程序占用了多少虚拟内存. RSS列 表示, 程序占用了多少物 ...

  8. Linux系统下查看某文件修改的时间戳

    Linux系统下查看某文件修改的时间戳查看文件时间戳命令:stat awk.txt File: `awk.txt' Size: 20              Blocks: 8          I ...

  9. centos linux中怎么查看和修改计算机名/etc/sysconfig/network

    centos linux中怎么查看和修改计算机名 查看计算机名:在终端输入hostname 修改的话 hostname +计算机名(重启后失效)要永久修改的话要修改配置文件/etc/sysconfig ...

随机推荐

  1. CodeForces - 605C 凸包+直线与凸包判交

    题目大意: 要完成两种属性p,q的需求,给定n个双属性物品及其单位个物品中含有的属性,要求选择最少的物品来达成属性需求.(可以选择实数个物品) 题解: 实际上是一种属性混合问题 我们知道对于两种双属性 ...

  2. 人物-IT-雷军:雷军

    ylbtech-人物-IT-雷军:雷军 雷军 (全国工商联副主席,小米科技创始人.董事长) 雷军,1969年12月16日出生于湖北仙桃,毕业于武汉大学,是中国大陆著名天使投资人.  雷军作为中国互联网 ...

  3. Weblogic反序列化漏洞(CVE-2017-10271)复现

    通过POST发送xml数据对WebLogic Server组件的WLS Security子组件造成任意代码执行漏洞 影响版本:10.3.6.0.0,12.1.3.0.0,12.2.1.1.0,12.2 ...

  4. Python模块-configparse模块

    configparse模块用来解析配置文件 配置文件 [DEFAULT] port = 3306 socket = /tmp/mysql.sock [mysqldump] max_allowed_pa ...

  5. ADO.NET 对象

    (一)OleDbConnection 使用COM组件链接 (二)ADO.NET 对对数据库访问做了优化: 1.SqlConnection 用于建立和Sql Server服务器连接的类,表示打开数据库 ...

  6. 串口发送Hex数组

    void MainWindow::String2Hex(QString str, QByteArray &senddata) { int hexdata,lowhexdata; ; int l ...

  7. Learning Python 006 list(列表) 和 tuple(元组)

    Python list(列表) 和 tuple(元组) list 列表 Python内置的一种数据结构.list:一种有序的集合,可以随时添加和删除其中的元素. list的用法 定义list > ...

  8. crontab简易入门

    前言 crontab是Unix和Linux用于设置周期性被执行的指令,是互联网很常用的技术,很多任务都会设置在crontab循环执行,如果不使用crontab,那么任务就是常驻程序,这对你的程序要求比 ...

  9. xgene:疾病相关基因,耳聋,彩色,老年痴呆,帕金森

    神经元的传递:一个下游神经元,它接受其上游神经元的各个突触传过来的信号,然而,每个突触对该下游神经元的激活权重是不同的. 从神经网络的本质上说,当人连续.多次遭受失败的时候,大脑内就会释放大量的抑制性 ...

  10. <c和指针>学习笔记5动态内存分配和预处理器

    1 动态内存 比如声明数组得时候,我们需要提前预估数组长度,分配大了浪费,少了就更不好操作了.从而引入动态分配,需要的时候再分配. (1)malloc和free void *malloc(size_t ...