Linux怎么使用host命令查询IP信息

小磊大大_3262

小磊大大_3262

2026-06-19

491人浏览

原创

host命令仅执行dns查询,不读取本地网卡配置或/etc/hosts文件,用于正向解析(域名→ip)和反向解析(ip→域名),需指定正确参数顺序与大小写,如host -t mx example.com,且默认绕过本地hosts文件。

linux怎么使用host命令查询ip信息

host 命令不能查本机 IP,它只查 DNS 记录 —— 想看自己机器的 IP 地址,请用 iphostname -I,别混用。

host 命令查的是远端域名或 IP 的 DNS 解析结果

它不读取本地网卡配置,也不访问 /etc/hosts(除非系统配置强制优先查 hosts,但 host 默认绕过)。它的作用很窄:发 DNS 查询包,等响应,打印结果。比如你输入 host google.com,实际是向当前 DNS 服务器(通常是 /etc/resolv.conf 里第一个)发一个 A 记录查询请求。

  • 查域名 → 得到 IP(正向解析),可能附带 CNAME
  • 查 IP(如 host 8.8.8.8)→ 得到 PTR 记录(反向解析),格式是 X.X.X.X.in-addr.arpa pointer 域名
  • 查不到时直接报 Host not foundconnection timed out,不会 fallback 到本地文件

常用参数组合和典型错误

多数人卡在参数顺序或类型拼写上。记住:-t 后必须紧跟记录类型,且大小写敏感;server 参数必须放在最后。

onewo-rtlinux
onewo-rtlinux

Linux 实时编程助手。生成、审查并修改用于周期性控制任务和中断驱动程序的 C 代码。强制实施实时调度策略。

下载
  • host -t MX example.com ✅ 正确:查邮件服务器
  • host example.com -t MX ❌ 错误:-t 被忽略,只做默认 A 查询
  • host -t mx example.com ❌ 多数版本报错:mx 不被识别,必须大写 MX
  • host @1.1.1.1 google.com ✅ 指定 DNS 服务器(注意 @ 符号位置)
  • host -W 2 google.com ✅ 设置超时为 2 秒,避免卡住

想查自己公网 IP?host 可以但有局限

host myip.opendns.com resolver1.opendns.com 确实能返回你的出口 IP,原理是 OpenDNS 的这个域名会响应客户端真实源 IP。但它依赖第三方服务可用性,且不保证 IPv6 支持。

  • 如果 resolver1.opendns.com 不可达,命令失败,不会自动换 DNS
  • 返回结果是纯文本,比如 myip.opendns.com has address 203.205.128.1,需用 awk '{print $4}' 提取
  • 对比 curl ifconfig.mehost 方式更轻量、无 HTTPS 开销,但容错更低

和 dig / nslookup 的关键区别在哪

host 输出固定、无多余字段,适合脚本解析;dig 返回完整协议级响应,含 TTL、权威标志等;nslookup 交互模式友好但输出不稳定。

  • 脚本中取 IP:用 host google.com | awk '{print $4}'dig +short google.com 更可靠(后者遇 CNAME 可能返回多行)
  • 调试 DNS 问题:host -v google.com 显示查询路径和响应时间,但不显示递归链路细节
  • 查 SOA 记录:用 host -C google.com,不是 -t SOA(后者无效)

真正容易被忽略的点是:host 默认走系统 DNS 配置,但不会读 /etc/nsswitch.conf 里的 hosts: files dns 顺序 —— 它跳过 files(即 /etc/hosts),只走 dns。如果你改过本地 hosts 绑定,host 查不到,得用 pinggetent hosts。这点不注意,排查时会绕弯路。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

linux

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

2023.06.21

3610

4

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

2023.06.29

3133

10

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

2023.06.30

2193

5

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

2023.07.05

5210

7

linux系统安装教程
linux系统安装教程

linux系统是一种可以免费使用,自由传播,多用户、多任务、多线程、多CPU的操作系统。本专题提供linux系统安装教程相关的文章,大家可以免费体验。

2023.07.06

4882

7

linux查看文件夹大小
linux查看文件夹大小

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。linux怎么查看文件夹大小呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.20

2933

8

linux查看ip命令
linux查看ip命令

本专题为大家提供linux查看ip命令相关文章内容,感兴趣的朋友可以免费下载体验试试。

2023.07.20

2445

4

linux查看cpu使用率
linux查看cpu使用率

在linux的系统维护中,可能需要经常查看cpu使用率,分析系统整体的运行情况。本专题为大家带来了linux查看cpu使用率的相关文章,感兴趣的朋友千万不要错过了。

2023.07.25

2659

6

linux查找文件命令
linux查找文件命令

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.31

277

3

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习