SYNOPSIS (总览)
host [-l ] [-v ] [-w ] [-r ] [-d ] [-t querytype ] [-a ] host [server ]
DESCRIPTION (描述)
Host 查询 Internet 主机 的 信息. 它 通过 一组 分布在 国家间的 互连服务器 获取这些 信息. 缺省情况下, host 只是 简单的 做 主机名字 和 Internet 地址 的 转换. 然而 通过 ``-t '' 或 ``-a '' 选项, 它 可以 用来 查找 由 域名服务器 维护的 某个主机 的 全部信息.
参数 可以是 主机名称, 也可以是 数字地址. 此程序 首先 把它 当做 主机的 数字地址, 如果 尝试 失败, 再把它 当做 主机名称. 主机的 数字地址 由 句点隔开的四个 十进位制数 组成, 例如 128.6.4.194. 主机名称 由 句点隔开的 名字 组成, 例如 topaz.rutgers.edu. 除非 名字 以句点 结尾, 否则 本地域名 将 自动 添加在后面. 因此, Rutgers 的 用户 可以 输入
它 实际上 查找 "topaz.rutgers.edu". 如果 尝试 失败, 就用 原来输入的 名字 再试一次 (这里就是 "topaz"). 邮件 和 其他 网络工具 用了 同样的 策略. 添加在 名字 后面 的 后缀 来自 调用 hostname(1) 的 结果, 使用了 第一个点 后面的 全部 数据. (另见 下面 Sx 定制查询主机名字 的 描述. )
第一个参数 是 你 打算查询的 主机名称. 如果 是 数字地址, 就 执行 ``反向查询 (inverse query)'' 也就是说, 域名系统 查看 一系列 独立的 数据库, 把 数字地址 转换成 名字.
第二个 参数 是 可选的. 它 允许你 指定查询 某个 特定的 服务器. 如果 没有 使用这个参数, 就用 缺省 服务器 (一般是本地机).
如果 指定了 名字, 你 可以见到 三个 不同种类的 输出. 这里是 它们的 例子:
用户 键入的命令 是 ``host sun4 . '' 第一行 表明 ``sun4.rutgers.edu '' 实际上 是 别名. 正式名字 是 ``ATHOS.RUTGERS.EDU . '' 接下来 两行 显示 地址. 如果 系统 有 多个 网络接口, host 就 分别 显示 每个接口 的 地址. 最后一行 表明 ATHOS.RUTGERS.EDU 不接收 属于它的 邮件, 邮件 由 ARAMIS.RUTGERS.EDU 处理. 由于 某些系统 拥有 多个 处理邮件的 系统, 可能 会有 多行 这样的显示. 从 技术角度 看, 我们 认为 每个 能够 接收邮件 的 系统 应该有 这样的项. 如果 系统 接收 它自己的 邮件, 应该 有一项 提及 该系统 自身; 例如:
然而, 很多 能够 接收 自己邮件 的 系统 不愿意 提及 这个事实. 如果 系统 有一项 ``mail is handled by '' 但是 没有 地址, 这 表明 它 不是 Internet 的 一部分, 而是 在 网络上 转发邮件 的 系统. Usenet, Bitnet 和 许多 其他网络 都有 类似项.
选项
在 主机名字 前面 能够 使用 很多 选项. 大多数 选项 只对 维护 域名数据库 有意义.
- -w
- 这一项 导致 host 永久 等待 应答. 正常情况下, 大约 一分钟后 产生 超时.
- -v
- 以 "繁琐" 格式 输出, 它是 正式的 主域文件格式, 在 手册页 named(8) 中 有描述. 没有 这个选项 时, 基本术语 的 输出 仍然 遵循 这个 格式, 但是 试图 对 普通用户 显示的 更智能些. 如果 不使用 ``-v '' 所有的 "a", "mx", 和 "cname" 项目 显示成 相应的 "has address", "mail is handled by" 和 "is a nickname for", 而且 不显示 TTL 和类型.
- -r
- 查询时 关闭 递归. 这 意味着 名字服务器 只返回 它 自身 数据库 的 数据. 不向 其他服务器 询问 更多 信息.
- -d
- 打开 调试功能. 显示 网络应答细节.
- -t querytype
- 允许 指定 querytype 来 查询 某个信息. 手册页 named(8) 中 定义了 这些 参数. 目前支持的 类型有: ``a , '' ``ns , '' ``md , '' ``mf , '' ``cname '' ``soa , '' ``mb , '' ``mg , '' ``mr , '' ``null , '' ``wks , '' ``ptr , '' ``hinfo , '' ``minfo , '' ``mx , '' ``uinfo '' ``uid , '' ``gid , '' ``unspec . '' 另外, 通配符 (可以 写成 ``any '' 或 ``* '' ) 可以 指定 上面的 任意(全部) 类型. 类型 必须是 小写字符. 注意 缺省 搜索顺序 首先是 ``a , '' 然后是 ``mx , '' 除非 打开了 -v 选项, 使 缺省值 只是 ``a '' ``-t '' 选项 在过滤 host 返回的信息 时 非常有用. 更多的 内容 参见 下面 ``-l '' 选项 的 说明.
- -a
- ``全部'' 等同于 ``-v -t any ''
- -l
- 列出 全部域项; 例如:
将 列出 rutgers.edu 域 中 所有的 主机. ``-t '' 选项 可以 按需 过滤 收到的信息. 缺省值 是 地址信息, 包括 PTR 和 NS 记录.
命令 以 正式主域文件格式 下载 rutgers.edu 的 全部 区域(zone) 数据. (然而 由于 某些 复杂原因, SOA 记录 显示了 两次.)
注意: ``-l '' 执行 全部的 区域 传输, 然后 过滤出 要求的 信息. 所以 万不得已才用 这个 命令.
定制查询主机名字
一般说来, 如果 用户 给出的 名字 中 不含 任何 句点, host 就把 缺省域名添加在 它的末尾. 缺省域名 能够 定义 在 /etc/resolv.conf 中, 但是 通常 从 本机名字 的 第一个 句点 后面 提取. 用户 可以 通过 环境变量 LOCALDOMAIN 指定 不同的 缺省域名. 另外, 用户 可以 自定义 主机名字 的 缩写. 缩写 存放在 某个文件 中, 一行 一项, 格式是 一个 缩写名字, 一个 空格, 然后是 完整的 主机名. 这个 名字文件 必须 用 HOSTALIASES 环境变量 指出.
环境变量
- HOSTALIASES
- 名字文件, 含有 (主机别名 , 主机全名 ) 对.