linux里dig命令 linux diag

如何在Linux中通过命令查看域名对应的IP

实际工作或者维护过程中常常需要通过域名反查下其对应的IP地址。解决方法有多种,既可以通过网上提供的域名反查IP查询工具查询,也可以在 Linux系统 中通过命令进行查询。

创新互联公司主要从事成都网站建设、成都网站设计、网页设计、企业做网站、公司建网站等业务。立足成都服务海沧,10多年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18982081108

本教程主要讲解如何在Linux系统中通过命令查看域名对应的IP地址,主要讲解以下5个命令:

dig命令它是一个功能强大且灵活的命令行工具,用于查询 DNS 名称服务器。它执行 DNS 查询,并显示来自查询的名称服务器的返回信息。大多数 DNS 管理员使用 dig 命令来解决 DNS 问题,因为它灵活、易用且输出清晰。

如何使用 dig 命令查找域的 IP 地址呢?看示例:

输出:

当然如果你需要一次查询多个域名的IP地址,可以通过将多个域名信息放到一个文本文件中,每行一个,然后编写shell脚本进行读取文件然后循环批量查询输出。

shell脚本命令类似如下:

host 命令可用于执行 DNS 查询。它通常用于将名称转换为 IP 地址,反之亦然。如果未提供任何参数或选项, host 将打印它的命令行参数和选项摘要。

输出:

同理,可以通过编写shell脚本实现批量查询,示例如下:

nslookup 命令是一个用于查询互联网域名服务器(DNS)的程序。

nslookup 有两种模式,分别是交互式和非交互式。交互模式允许用户查询名称服务器以获取有关各种主机和域的信息,或打印域中的主机列表。非交互模式用于仅打印主机或域的名称和请求的信息。

它是一个网络管理工具,可以帮助诊断和解决 DNS 相关问题。命令示例如下:

输出:

同理,使用以下 bash 脚本查找多个域的 IP 地址

fping 命令是类似 ping 之类的程序,它使用互联网控制消息协议(ICMP)echo 请求来确定目标主机是否响应。

fping 与 ping 不同,因为它允许用户并行 ping 任意数量的主机。另外,它可以从文本文件输入主机。

fping 发送 ICMP echo 请求,并以循环方式移到下一个目标,并且不等到目标主机做出响应。

如果目标主机答复,那么将其标记为活动主机并从要检查的目标列表中删除;如果目标在特定时间限制和/或重试限制内未响应,那么将其指定为不可访问。

fping命令程序并不默认安装在 Linux发行版 中,一般需要进行安装,常见的发行版安装命令如下:

Ubuntu / Debian / LinuxMint

Fedora / CentOS / RHEL

fping默认使用示例:

输出:

更多关于fping的使用方法可以通过在终端中键入 man fping 来学习。

ping 命令(数据包互联网抓手Packet Internet Groper)是一个网络程序,用于测试 Internet 协议(IP)网络上主机的可用性/连接性。

ping命令通过向目标主机发送互联网控制消息协议(ICMP)Echo 请求数据包并等待 ICMP Echo 应答来验证主机的可用性。

它基于发送的数据包、接收的数据包、丢失的数据包,通常包含最小/平均/最大时间来汇总统计结果。

命令示例:

输出:

我们可以看到输出内容中起对应的IP地址,如果需要过滤输出,增加更多相应的命令处理:

输出:

以上内容为在 Linux系统 中使用5个命令来获取域名对应的IP地址。建议你可以在自己的服务器或者自己的Linux同上进行尝试,也可以通过编写shell脚本进行批量处理或通过相应的命令对输出进行处理输出自己想要的内容。

linux的dig命令有什么用?

dig 命令的基本用法 在 unix 和 linux 下,建议大家使用 dig 命令来代替 nslookup。 dig 命令的功能比 nslookup 强大很多,不像 nslookkup 还得 set 来 set 去的,怪麻烦的。下面是 dig 的一些比较常用的命令: # dig 最基本的用法 # 用 dig 查看 zone 数据传输 AXFR # 用 dig 查看 zone 数据的增量传输

如果你还有什么不懂的去看看《Linux就该这么学》这本书

跟踪域名解析过程的几条命令

在学习计算机网络的时候就知道到了DNS的解析过程,但是一直没有实践过。这次趁着配置狗爹上买的域名,通过跟踪域名的解析过程,算是DNS有了更深刻的了解。

nslookup(name server lookup)是一个用于查询 Internet域名信息或诊断DNS 服务器问题的工具。在windows和Linux都可以通过nslookup输入域名得到相应的IP地址。相反的,我们也可以通过输入IP地址来获得主机名。

获取更详细的应用,请参照 nslookup 命令用法 。

在Linux系统中,通过dig命令可以查询DNS的解析过程。

下面展示的是使用最简单的dig命令来查询DNS的结果,这对我们理解复杂一点的dig命令的结果很有帮助。

输出了DIG和Linux的版本号以及查询的域名

说明可以增加参数cmd。

表示下面信息是此次查询所得的结果,包含5个部分,分别是头部HEADER,查询部分QUESTION SECTION,回复部分ANSWER SECTION,权威机构部分AUTHORITY SECTION,附加部分ADDITIONAL SECTION。

opcode 操作码,QUERY,代表是查询操作

status 状态,NOERROR,代表没有错误

id 编号,7794,16bit数字,在dns协议中,通过编号匹配返回和查询。

flags 标志,如果出现就表示有标志,如果不出现就未设置标志:

qr query,查询标志,代表是查询操作

rd recursion desired, 代表希望进行递归(recursive)查询操作

ra recursive available 在返回中设置,代表查询的服务器支持递归(recursive)查询操作。

aa Authoritative Answer 权威回复,如果查询结果由管理域名的域名服务器而不是缓存服务器提供的,则称为权威回复。

QUERY 查询数,1代表1个查询,对应下面的QUESTION SECTION中的记录数

ANSWER 结果数,3代表有3项结果,对应下面ANSWER SECTION中的记录数

AUTHORITY 权威域名服务器记录数,4代表该域名有4个权威域名服务器,可供域名解析用。对应下面AUTHORITY SECTION

ADDITIONAL 格外记录数,4代表有4项格外记录。对应下面 ADDITIONAL SECTION。

查询部分,从左到右各部分意义:

1、要查询的域名,这里是hihuaning.com.,'.'代表根域名,com顶级域名,hihuaning二级域名

2、class,要查询信息的类别,IN代表类别为IP协议,即Internet。还有其它类别,比如chaos等,由于现在都是互联网,所以其它基本不用。

3、type,要查询的记录类型,A记录(Address),代表要查询ipv4地址。AAAA记录,代表要查询ipv6地址。

回应部分,回应有CNAME记录和A记录,说说CNAME记录从左到右各部分意义:

1、对应的域名,这里是hihuaning.com.,'.'代表根域名,com顶级域名,hihuaning二级域名

2、TTL,time ro live,缓存时间,单位秒。5,代表缓存域名服务器,可以在缓存中保存5秒该记录。

3、class,要查询信息的类别,IN代表类别为IP协议,即Internet。还有其它类别,比如chaos等,由于现在都是互联网,所以其它基本不用。

4、type,要查询的记录类型,CNAME记录,代表hihuaning.com有个别名samkingz.github.io

5、域名对应的CNAME别名

权威域名部分,回应都是NS记录(Name Server),NS记录从左到右各部分意义:

1、对应的域名,这里是fastlylb.net.,'.'代表根域名,com顶级域名,fastlylb二级域名

2、TTL,time ro live,缓存时间,单位秒。5,代表缓存域名服务器,可以在缓存中保存5秒该记录。

3、class,要查询信息的类别,IN代表类别为IP协议,即Internet。还有其它类别,比如chaos等,由于现在都是互联网,所以其它基本不用。

4、type,要查询的记录类型,NS,Name Server,NS记录,代表该记录描述了域名对应的权威域名解析服务器

5、域名对应域名对应的权威域名解析服务器。由于ns3.fastlylb.net.是fastlylb.net.的子域名,而解析子域名,又需要主域名的信息,为了打破这个死循环,需要在下面的额外记录中提供该服务器的ip地址。

额外记录部分,这里都是A记录,A记录从左到右各部分意义:

1、对应的域名,这里是ns1.fastlylb.net.,'.'代表根域名,net顶级域名,fastlylb二级域名,ns1是三级域名。

2、TTL,time ro live,缓存时间,单位秒。5,代表缓存域名服务器可以在缓存中保存5秒该记录。

3、class,要查询信息的类别,IN代表类别为IP协议,即Internet。还有其它类别,比如chaos等,由于现在都是互联网,所以其它基本不用。

4、type,要查询的记录类型,A记录,代表要查询ipv4地址。AAAA记录,代表要查询ipv6地址。

5、域名对应的ip地址。

查询耗时

查询使用的服务器地址和端口

查询的时间

回应的大小。收到(rcve, recieved)256字节。

使用 dig hihuaning.com +trace 命令,我们可以看到整个域名是如何发起和解析的,从根域名(.)到gTLD Server(.com),再到Name Server(hihuaning.com.)的整个过程都显示出来了。

获取更详细的应用,请参照 dig 命令用法 。

从dig查询结果看DNS的A记录和NS记录

深入分析java web技术内幕

dig命令详解

dig(域信息搜索器)执行DNS搜索,显示从接受请求的域名服务器返回的答复。多数DNS管理员利用dig作为DNS问题的故障诊断,因为它灵活性好,易用、输出清晰。通常情况下dig使用命令行参数,但它也可以按批处理模式从文件读取搜索请求。不同于早期版本,dig的BIND9实现允许从命令行发出多个查询,除非被告知请求特定域名服务器,dig将尝试/etc/resolv.conf中列举的所有服务器。当未指定任何命令行参数或选项时,dig将对“.”执行NS查询。

-b address设置所要询问地址的源IP地址。这必须是主机网络接口上的某一合法的地址

-c class缺省查询类,由选项-c重设。class可以是任何合法类,比如查询Hesiod记录的HS类或查询CHAOSNET记录的CH类;

-f filename使dig在批处理模式下运行,通过从文件filename读取一系列搜索请求加以处理。文件包含许多查询,每行一个。文件中的每一项都应该和使用命令行接口对dig查询相同的方法来组织;-f filename使dig在批处理模式下运行,通过从文件filename读取一系列搜索请求加以处理。文件包含许多查询,每行一个。文件中的每一项都应该和使用命令行接口对dig查询相同的方法来组织;

-h显示一个简短的命令行参数和选项摘要;-h显示一个简短的命令行参数和选项摘要;

-k filename要签署由dig发送的DNS查询以及对他们使用事物签名(TSIG)的响应,用选项-K指定TSIG密钥文件;-k filename要签署由dig发送的DNS查询以及对他们使用事物签名(TSIG)的响应,用选项-K指定TSIG密钥文件;

-n

-p port如果需要查询一个非标准的端口号,则使用选项-p。port是dig将发送其查询的端口号,而不是标准的DNS端口号53。该选项可用于测试已在非标准端口号上配置成侦听查询的域名服务器;-p port如果需要查询一个非标准的端口号,则使用选项-p。port是dig将发送其查询的端口号,而不是标准的DNS端口号53。该选项可用于测试已在非标准端口号上配置成侦听查询的域名服务器;

-t type设置查询的类型为type。可以是BIND9支持的任意有效查询类型。缺省查询类型是A,除非提供-x选项来指示一个逆向查询。通过指定AXFR的type可以请求一个区域传输。当需要增量区域传输(IXFR)时,type设置为ixfr=N,增量区域传输将包含自从区域的SOA记录中的序列号改为N之后对区域所做的更改;-t type设置查询的类型为type。可以是BIND9支持的任意有效查询类型。缺省查询类型是A,除非提供-x选项来指示一个逆向查询。通过指定AXFR的type可以请求一个区域传输。当需要增量区域传输(IXFR)时,type设置为ixfr=N,增量区域传输将包含自从区域的SOA记录中的序列号改为N之后对区域所做的更改;

-x addr 逆向查询(将地址映射到名称);-x addr 逆向查询(将地址映射到名称);

-y name key指定TSIG秘钥;-y name key指定TSIG秘钥;

查询域名服务器时使用 [不使用] TCP。缺省行为是使用 UDP,除非是 AXFR 或 IXFR 请求,才使用 TCP 连接。

查询名称服务器时使用 [不使用] TCP。+[no]tcp 的备用语法提供了向下兼容。vc 代表虚电路。

忽略 UDP 响应的中断,而不是用 TCP 重试。缺省情况运行 TCP 重试。

设定包含单个域 somename 的搜索列表,好像被 /etc/resolv.conf 中的域伪指令指定,并且启用搜索列表处理,好像给定了 +search 选项。

使用 [不使用] 搜索列表或 resolv.conf 中的域伪指令(如果有的话)定义的搜索列表。缺省情况不使用搜索列表。

不建议看作 +[no]search 的同义词。

该选项不做任何事。它用来提供对设置成未实现解析器标志的 dig 的旧版本的兼容性。

在查询中设置 [不设置] AD(真实数据)位。目前 AD 位只在响应中有标准含义,而查询中没有,但是出于完整性考虑在查询中这种性能可以设置。

在查询中设置 [不设置] CD(检查禁用)位。它请求服务器不运行响应信息的 DNSSEC 合法性。

切换查询中的 RD(要求递归)位设置。在缺省情况下设置该位,也就是说 dig 正常情形下发送递归查询。当使用查询选项 +nssearch 或 +trace 时,递归自动禁用。

这个选项被设置时,dig 试图寻找包含待搜名称的网段的权威域名服务器,并显示网段中每台域名服务器的 SOA 记录。

切换为待查询名称从根名称服务器开始的代理路径跟踪。缺省情况不使用跟踪。一旦启用跟踪,dig 使用迭代查询解析待查询名称。它将按照从根服务器的参照,显示来自每台使用解析查询的服务器的应答。

设定在输出中显示指出 dig 版本及其所用的查询选项的初始注释。缺省情况下显示注释。

提供简要答复。缺省值是以冗长格式显示答复信息。

当启用 +short 选项时,显示 [或不显示] 提供应答的 IP 地址和端口号。如果请求简短格式应答,缺省情况不显示提供应答的服务器的源地址和端口号。

切换输出中的注释行显示。缺省值是显示注释。

该查询选项设定显示统计信息:查询进行时,应答的大小等等。缺省显示查询统计信息。

显示 [不显示] 发送的查询请求。缺省不显示。

当返回应答时,显示 [不显示] 查询请求的问题部分。缺省作为注释显示问题部分。

显示 [不显示] 应答的回答部分。缺省显示。

显示 [不显示] 应答的权限部分。缺省显示。

显示 [不显示] 应答的附加部分。缺省显示。

设置或清除所有显示标志。

为查询设置超时时间为 T 秒。缺省是 5 秒。如果将 T 设置为小于 1 的数,则以 1 秒作为查询超时时间。

设置向服务器发送 UDP 查询请求的重试次数为 A,代替缺省的 3 次。如果把 A 小于或等于 0,则采用 1 为重试次数。

出 于完全考虑,设置必须出现在名称 D 的点数。缺省值是使用在 /etc/resolv.conf 中的 ndots 语句定义的,或者是 1,如果没有 ndots 语句的话。带更少点数的名称被解释为相对名称,并通过搜索列表中的域或文件 /etc/resolv.conf 中的域伪指令进行搜索。

设置使用 EDNS0 的 UDP 消息缓冲区大小为 B 字节。缓冲区的最大值和最小值分别为 65535 和 0。超出这个范围的值自动舍入到最近的有效值。

以详细的多行格式显示类似 SOA 的记录,并附带可读注释。缺省值是每单个行上显示一条记录,以便于计算机解析 dig 的输出。

dig 的 BIND9 支持在命令行上指定多个查询(支持 -f 批处理文件选项的附加功能)。每条查询可以使用自己的标志位、选项和查询选项。

在这种情况下,在上面描述的命令行语法中,每条查询自变量代表一个个别查询。每一条由任意标准选项和标志、待查询名称、可选查询类型和类以及任何适用于该查询的查询选项。

也可以使用对所有查询均有效的查询选项全局集合。全局查询选项必须位于命令行上第一个名称、类、类型、选项、标志和查询选项的元组之前。任何全局查询选项(除了 +[no]cmd 选项)可以被下面的查询特别选项重设。例如:

dig +qr any -x 127.0.0.1 isc.org ns +noqr

显 示 dig 如何从命令行出发进行三个查询:一个针对 的任意查询、一个 127.0.0.1 的逆向查询,以及一个 isc.org 的 NS 记录查询。应用了 +qr 的全局查询选项,以便 dig 显示进行每条查询的初始查询。最后那个查询有一个本地查询选项 +noqr,表示 dig 在搜索 isc.org 的 NS 记录时不显示初始查询。

一个典型的 dig 调用类似:

待 查询名称服务器的名称或 IP 地址。可以是用点分隔的 IPv4 地址或用冒号分隔的 IPv6 地址。当由主机提供服务器参数时,dig 在查询域名 服务器前先解析那个名称。如果没有服务器参数可以提供,dig 参考 /etc/resolv.conf,然后查询列举在那里的域名服务器。显示来自域名 服务器的应答。

将要查询的资源记录的名称。

显示所需的查询类型 - ANY、A、MX、SIG,以及任何有效查询类型等。如果不提供任何类型参数,dig 将对纪录 A 执行查询。

用 dig 查看 zone 数据传输

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

用 dig 查看反向解析

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

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

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

查看 bind 的版本号

dig 命令结果解析

dig命令,可以用来分析dns解析过程。最简单的使用方式: dig your domain。

例如使用dig ,会输出如下信息:

dig返回内容的第一部分,主要包括dig的版本信息,以及本次命令执行结果的摘要。

opcode:QUERY,表示执行查询操作。

status:NOERROR。解析成功。

展示发起的DNS 请求参数。其中A表示我们默认查询A类型的记录。

其格式解读如下:

对于dns返回记录的type,主要包括的类型如下:

使用 dig url +trace ,可以看到更详细的域名解析过程,便于更方便定位问题。

nslookup 也可以进行dns分析。


本文名称:linux里dig命令 linux diag
网页链接:http://scyanting.com/article/hgdico.html