Can You DIG It?

当我深入了解SQL Server DBA和Oracle Hotsos的Linux,我 ’m挖掘挖掘,是的,我和第一句话一起去了那里….

什么是挖?

挖掘代表域名信息Groper,(不,不是那种Groper…)  and it’对更深入的Linux学习的重要组成部分,适用于所有数据库技术。Â您可以’如果你不提供连接数据’要知道如何从点A到点B并挖掘是帮助您收集围绕DNS的信息的实用程序。否允许用户使用命令行参数和批处理模式使用列表文件来收集深度信息,因此它可以是用作脚本和警报的一部分。挖掘有很多功能,比我找到了nslookup和我的更多功能’M惊讶于,在我们的信息类型可以帮助时,DBA使用的频率如何令人惊讶’re troubleshooting.

首先,让我们’s讨论挖掘的帮助选项。您的第一个倾斜度是键入:

$ dig --help

但是,即使是–帮助选项将推荐,使用以下内容更完整的帮助信息:

$ dig --h

我知道’S少的变化,但输出非常值得。

挖掘与连字母和加号后面的字母的组合使用,后跟命令字。

$ dig -<x> +<command>

采购

默认情况下,挖掘将搜索名称服务器的/etc/resolv.conf文件,并且仅在指示时偏离此。

I’在一个码头容器上,这是一个完美的地方被适应挖掘,所以我的文件很简单:

$ view /etc/resolv.conf

# Generated by dhcpcd from eth0.dhcp
# /etc/resolv.conf.head can replace this line
domain <domain>.com
nameserver <IPAddy>
# /etc/resolv.conf.tail can replace this line

要更改为指向此文件中列出的另一个名称服务器,您可以在参数行中添加它,或者您可以将.digrc文件添加到$ home目录中以与dig. .digro文件是一个简单的文本文件的文件,如条目如下所示,在emply中,在examp中,我’ve添加了Delphix,但您可以根据需要添加多么多:

# dig delphix.com
delphix.com.              3427    IN      A       23.185.0.3
<next.com>                3427    IN      A       <IP Address>

开始

如果您只在没有任何命令行参数的情况下键入dig’ll获取从根目录返回的所有内容(对于您的SQL Server人员仍然习惯的人,它’是层次结构树的顶部,也被称为” . ”

我们可以使用DIG探索任何域,并为我们的示例,我们’ll use PASS’ website, http://pass.org.

通过简单地打字:

$ dig <domain name>

我们收到很多信息。每行从单一开始“;”是一个评论,其中有双人间“;” are responses.

  • 它告诉你这个问题是什么,在这种情况下,“pass.org”
  • 然后,它通知您下一节包括答案,告诉您:
    • 查询的时间
    • 使用的名称服务器
    • 时间戳,包括时区
    • 和消息大小。

您可以通过发出以下更新命令关闭关于查询的这些统计信息,(时间,时间戳,大小):

$ dig <domain name> +nostats

现在让我们说我们不’T需要所有信息。我们只想知道我们域的IP地址’再次检查。然后我们可以使用“+short” argument, which you’ll在上面的屏幕截图中看到。

Now PASS is a pretty simple, straight forward site, but what about one with a lot of front end tolerance built into it, (depending on the architecture, design, etc.)  It may return a lot more information, which using the “+short” argument, can be seen for http://ebay.com.

您可以使用不同的域名测试此功能,并查看结果。在运行此命令时,请注意差异,无论是否存在“+short” for sites  like:

  • Google.com
  • 微软.com.
  • aws.com.
  • 甲骨文.com.

对于传递网站的所有DNS记录,我可以采取此更远并查询:

$ dig pass.org ANY +noall +answer

换句话说,给我任何DNS信息,没有所有额外的数据,包括统计数据,但我确实想要答案。这与使用不同“+nostats”参数。结果显示PASS.org的IP信息,识别“A”,所有识别的名称服务器“NS”并且您可以看到SOA,Mail Exchange,(MX)和返回的文本答案(TXT)。Â您可能会收到其他类别的信息,例如安全性和证书,(CAA)和实时数据的时间(TTL) )这是DNS记录存储。

挖掘[Ging]你的主人

我刚刚演示的许多查询将为您在环境中工作的主机提供有价值的数据。概念非常相似,因此执行一个简单的查询,我们’LL请求有关Docker容器的一些简单信息:

$ dig <host name> name type

现在,主机名也可以用IP地址替换。这可以派上派上可以换’Re试图在DNS中列出了HOST的长或短名称是否列出了DNS.替换此命令,每个命令都将告诉我是否存在任何错误,并且沿途连接的名称服务器。也可以看到连接到每个并继续进行多长时间。’M只能捕获少量返回的内容,常如简单的容器可以显示丰富的数据:

请注意,我能够通过执行a快速获取主机的名称“uname -a”,(想表明如果你没有’T显示您的提示中的名称)知道返回的第二个值是主机名所需的值,(在我的情况下,容器名称)。

让’S表示我需要在我的容器上做反向查找。挖掘的推荐命令是以下内容:

$ dig -x <container name> +short

问题是,无法通过此容器反转查找。Â它’挖掘的一个重要方面是你可以从中开始“+short”参数,然后在您确实遇到意外的响应时放弃它。就像你一样’LL在下面的屏幕截图中看到,我们’请参阅完整答案演示,没有答案,(答案:0)到容器上的反向查找。

当你’Re试图弄清楚为什么ODBC,.NET,SQLJ或其他连接失败,挖掘实用程序可以提供有价值的数据,以回答有关DNS的问题,该问题通常是对数据库技术专家无形的。

 

 

 

 

dbakevlar.

http://about.me/dbakevlar