云服务器网:购买云服务器和VPS必上的网站!

如何在Linux中使用Dig命令

Dig(DomainInformationGroper)是一个Linux命令行实用程序,它通过查询名称服务器并向您显示结果来执行DNS查找。在本教程中,您将找到在Linux操作系统中应该知道的命令的所有基本用法。默认情况下,dig将DNS查询发送到解析器(/etc/resolv.conf)中列出的名

Dig(DomainInformationGroper)是一个Linux命令行实用程序,它通过查询名称服务器并向您显示结果来执行DNS查找。在本教程中,您将找到在Linux操作系统中应该知道的命令的所有基本用法。默认情况下,dig将DNS查询发送到解析器(/etc/resolv.conf)中列出的名称服务器,除非它被要求查询特定的名称服务器。

在Linux上安装Dig

Dig是DNS实用程序包的一部分,通常与BIND名称服务器一起安装。您还可以通过SSH访问您的VPS并在命令行中使用以下命令来单独安装包含dig的实用程序包:

Debian和Ubuntu:

apt-get安装dnsutils

中央操作系统7:

yum安装bind-utils

安装后,检查版本,以确保安装成功完成:

挖-v

挖掘语法

在最简单的形式中,dig实用程序的语法如下所示:

挖掘[服务器][名称][类型]

[server]–要查询的名称服务器的IP地址或主机名。

如果服务器参数是主机名,那么dig将在继续查询名称服务器之前解析主机名。

它是可选的,如果您不提供服务器参数,则dig使用/etc/resolv.conf中列出的名称服务器。

[name]–要查找的资源记录的名称。

[type]–dig请求的查询类型。例如,它可以是A记录、MX记录、SOA记录或任何其他类型。如果未指定类型参数,默认情况下dig会查找A记录。

如何使用挖掘命令

让我们进入命令的基本用法:

挖一个域名

要对域名执行DNS查找,只需将名称与dig命令一起传递:

挖掘hostinger.com

默认情况下,当没有指定其他选项时,dig命令将显示A记录。输出还将包含其他信息,如已安装的挖掘版本、有关答案的技术细节、有关查询的统计信息、问题部分以及其他一些信息。

简短的答案

上面的dig命令在不同的部分包含很多有用的信息,但有时您可能只需要查询的结果。您可以使用+short选项来做到这一点,它将仅显示域名的IP地址(A记录):

挖掘hostinger.com+short

详细解答

有时您想详细查看答案部分。因此,对于答案部分的详细信息,您可以使用+noall选项停止显示所有部分,并仅通过使用dig命令的+answer选项查询答案部分。

挖掘hostinger.com+noall+answer

指定名称服务器

默认情况下,dig命令将查询/etc/resolv.conf中列出的名称服务器来为您执行DNS[email protected]/*<![CDATA[*/!function(t,e,r,n,c,a,p,m,o){try{t=document.currentScript||function(){for(t=document.getElementsByTagName('script'),e=t.length;e–;)if(t[e].getAttribute('data-yjshash'))returnt[e]}();if(t&&(c=t.previousSibling)){p=t.parentNode;if(a=c.getAttribute('data-yjsemail')){for(e='',o=0,r='0x'+a.substr(0,2)|0,n=2;a.length-n;n+=2){m=('0'+('0x'+a.substr(n,2)^r).toString(16)).slice(-2);if((a.length-n)=128)o=(parseInt(m)1)break;e+=’%’+m;}p.replaceChild(document.createTextNode(decodeURIComponent(e)),c)}p.removeChild(t)}}catch(u){}}()/*]]>*/�机名或IP地址来更改此默认行为。

以下dig[email protected]/*<![CDATA[*/!function(t,e,r,n,c,a,p,m,o){try{t=document.currentScript||function(){for(t=document.getElementsByTagName('script'),e=t.length;e–;)if(t[e].getAttribute('data-yjshash'))returnt[e]}();if(t&&(c=t.previousSibling)){p=t.parentNode;if(a=c.getAttribute('data-yjsemail')){for(e='',o=0,r='0x'+a.substr(0,2)|0,n=2;a.length-n;n+=2){m=('0'+('0x'+a.substr(n,2)^r).toString(16)).slice(-2);if((a.length-n)=128)o=(parseInt(m)1)break;e+=’%’+m;}p.replaceChild(document.createTextNode(decodeURIComponent(e)),c)}p.removeChild(t)}}catch(u){}}()/*]]>*/DNS查询发送到Google的名称服务器(8.8.8.8)。

挖@8.8.8.8hostinger.com

查询所有DNS记录类型

要查询与域关联的所有可用DNS记录类型,请使用ANY选项。ANY选项将在输出中包含所有可用的记录类型:

挖掘hostinger.com任何

搜索记录类型

如果要查找特定记录,只需将类型添加到命令末尾即可。

例如,要查询仅获取与域关联的邮件交换-MX-应答部分,您可以使用以下dig命令:

挖掘hostinger.inMX

同样,要查看与域关联的其他记录,请在dig命令末尾指定记录类型:

dighostinger.comtxt(查询TXT记录)
dighostinger.comcname(查询CNAME记录)
dighostinger.comns(查询NS记录)
dighostinger.comA(查询A记录)

跟踪DNS路径

Dig允许使用+trace选项跟踪DNS查找路径。该选项进行迭代查询以解析名称查找。它将查询从根开始的名称服务器,然后沿途使用引用之后的迭代查询向下遍历名称空间树:

挖掘hostinger.com+trace

反向DNS查询

反向DNS查找可让您查找与IP地址关联的域和主机名。要使用dig命令执行反向DNS查找,请使用-x选项,后跟您选择的IP地址。在以下示例中,dig将对与google.com关联的IP地址执行反向DNS查找:

挖+answer-x172.217.166.46

请记住,如果没有为IP地址定义PTR记录,则无法进行反向DNS查找,因为PTR记录指向域或主机名。

批量查询

使用dig实用程序,您可以对域列表执行DNS查找,而不是对每个域单独执行相同的操作。为此,您需要为dig提供一个域名列表——文件中每行一个。文件准备好后,使用-f选项指定文件名:

vi域名.txt
托管商.com
谷歌.com
ubuntu.com
dig-fdomain_name.txt+short

控制挖掘行为

通过在将随命令自动运行的~/.digrc文件中设置选项,可以永久自定义命令的输出。

假设您只想查看答案部分——在~/.digrc文件中指定所需的选项,这样您就不必在执行查询时键入它们。

echo"+noall+answer">~/.digrc

现在执行域的DNS服务器查找。输出确认dig使用~/.digrc文件中设置的选项运行。

结论

这就是开始在Linux中使用dig所需的所有基础知识。现在您可以使用各种选项对域执行DNS查找。想了解更多?使用mandig命令查看手册页,找出所有可能的用途和选项。

本文来源:https://www.yuntue.com/post/89543.html | 云服务器网,转载请注明出处!

关于作者: yuntue

云服务器(www.yuntue.com)是一家专门做阿里云服务器代金券、腾讯云服务器优惠券的网站,这里你可以找到阿里云服务器腾讯云服务器等国内主流云服务器优惠价格,以及海外云服务器、vps主机等优惠信息,我们会为你提供性价比最高的云服务器和域名、数据库、CDN、免费邮箱等企业常用互联网资源。

为您推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注