host

host将主机名解析为IP地址或将IP地址解析为主机名。

语法

host [-aCdlriTwv] [-c class] [-N ndots] [-t type] [-W time] [-R number] [-m flag] hostname [server]

host 命令会返回主机的 IP 地址(当指定了 HostName 参数时)和主机名(当指定了 Address 参数时)。根据名称解析服务的配置,host 命令还可能显示与 HostName 参数关联的任何别名。 名称解析服务的示例包含 local、nis 和 bind。

命令行选项

注意:不同操作系统下的命令行选项会有所不同,下面是ubuntu 16.04的参数:

选项 描述
-a 相当于使用“-v -t *”
-c Class 指定当它搜索非因特网数据时要查看的类。以下是有效类:IN: 因特网类;CHAOS: Chaos类;HESIOD: MIT Althena Hesiod 类; ANY: 通配符(以上任意一个)
-C 比较权威名称服务器上的SOA记录
-d 等同 -v
-l lists all hosts in a domain, using AXFR
-i IP6.INT reverse lookups
-n 相当于发布 /usr/bin/hostnew 命令。hostnew 命令将执行绑定解析服务。
-N changes the number of dots allowed before root lookup is done
-r 禁用递归处理。
-R specifies number of retries for UDP packets
-s a SERVFAIL response should stop query
-t Type 指定要查询的记录类型。
-T enables TCP/IP mode
-v 详细方式。
-V print version number and exit
-w 永远等待 DNS 服务器的一个回答。
-W specifies how long to wait for a reply
-4 use IPv4 query transport only
-6 use IPv6 query transport only
-m set memory debugging flag `(trace

-t Type 支持的类型有:

Type 记录类型
CNAME 别名的规范名称
HINFO 主机处理器和操作系统类型
KEY 安全密钥记录
MINFO 邮箱或邮件列表信息
MX 邮件交换器
NS 指定范围的名称服务器
PTR 如果查询的是 IP 地址,那么此项为主机名;否则,为指向其他信息的指针
SIG 签名记录
SOA 域的”授权开始”信息
TXT 文本信息
UINFO 用户信息
WKS 所支持的众所周知的服务

命令行参数

参数 描述
Address 指定解析主机名时要使用的主机的 IP 地址。Address 参数必须是有效的 IP 地址,以点分十进制格式表示。
HostName 指定解析 IP 地址时要使用的主机的名称。HostName 参数可以是不平常的主机名,也可以是熟知主机名(例如 nameserver、printserver 或 timeserver,如果这些名称存在)。
Server 指定查询要使用的名称服务器。可选,如果没有指定则使用 resolv.conf 文件中定义的DNS服务器

Address 和 HostName 参数必须二选一,Server 可选。

使用案例

最简单的查询,默认只有A和MX记录:

$ host skyao.io
skyao.io has address 119.28.182.148

如果要输出全部信息:

host -a skyao.io
Trying "skyao.io"
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 34465
;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 10

;; QUESTION SECTION:
;skyao.io.			IN	ANY

;; ANSWER SECTION:
skyao.io.		561	IN	A	119.28.182.148
skyao.io.		22	IN	NS	f1g1ns1.dnspod.net.
skyao.io.		22	IN	NS	f1g1ns2.dnspod.net.
skyao.io.		22	IN	SOA	f1g1ns1.dnspod.net. freednsadmin.dnspod.com. 1515202762 3600 180 1209600 180

;; ADDITIONAL SECTION:
f1g1ns1.dnspod.net.	76593	IN	A	61.151.180.44
......
f1g1ns2.dnspod.net.	79458	IN	A	182.140.167.188

Received 315 bytes from 30.102.12.12#53 in 3988 ms

查询SOA权威域名服务器:

$ host -C skyao.io
Nameserver 121.51.128.164:
	skyao.io has SOA record f1g1ns1.dnspod.net. freednsadmin.dnspod.com. 1515202762 3600 180 1209600 180
Nameserver 14.215.155.170:
	skyao.io has SOA record f1g1ns1.dnspod.net. freednsadmin.dnspod.com. 1515202762 3600 180 1209600 180
......
Nameserver 121.51.1.151:
	skyao.io has SOA record f1g1ns1.dnspod.net. freednsadmin.dnspod.com. 1515202762 3600 180 1209600 180

参考资料