18143453325 在线咨询 在线咨询
18143453325 在线咨询
所在位置: 首页 > 营销资讯 > 建站知识 > 如何在Linux中通过命令查看域名对应的IP

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

时间:2023-02-12 00:45:02 | 来源:建站知识

时间:2023-02-12 00:45:02 来源:建站知识

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

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

通过dig命令查询域名对应IP

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

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

dig www.linux.com输出:

; <<>> DiG 9.10.6 <<>> www.linux.com;; global options: +cmd;; Got answer:;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 18721;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1;; OPT PSEUDOSECTION:; EDNS: version: 0, flags:; udp: 4096;; QUESTION SECTION:;www.linux.com. IN A;; ANSWER SECTION:www.linux.com. 300 IN A 23.185.0.3;; Query time: 538 msec;; SERVER: 192.168.1.1#53(192.168.1.1);; WHEN: Tue Dec 03 18:04:41 CST 2019;; MSG SIZE rcvd: 58当然如果你需要一次查询多个域名的IP地址,可以通过将多个域名信息放到一个文本文件中,每行一个,然后编写shell脚本进行读取文件然后循环批量查询输出。

shell脚本命令类似如下:

#!/bin/bashfor server in `cat /opt/scripts/domains-list.txt`do echo $server "-"dig $server +shortdone | paste -d " " - - -

通过host命令查询域名对应IP

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

host www.linux.com输出:

www.linux.com has address 23.185.0.3www.linux.com has IPv6 address 2620:12a:8000::3www.linux.com has IPv6 address 2620:12a:8001::3同理,可以通过编写shell脚本实现批量查询,示例如下:

for server in `cat /opt/scripts/domains-list.txt`do host $server | grep "has address" | sed 's/has address/-/g'done

通过nslookup命令查询域名对应IP

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

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

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

nslookup www.linux.com输出:

Server: 192.168.1.1Address: 192.168.1.1#53Non-authoritative answer:Name: www.linux.comAddress: 23.185.0.3同理,使用以下 bash 脚本查找多个域的 IP 地址

#!/bin/bashfor server in `cat /opt/scripts/domains-list.txt`do echo $server "-"nslookup $server | tail -n+4 | sed -e '/^$/d' -e 's/Address://g' | grep -v 'Name|answer' | xargs -n1 done | paste -d " " done

通过fping命令查询域名对应IP

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

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

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

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

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

Ubuntu/Debian/LinuxMint

sudo apt install fpingFedora/CentOS/REHL

yum install fpingor dnf install fpingfping默认使用示例:

fping -A www.linux265.com输出:

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

通过ping命令查询域名对应IP

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

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

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

命令示例:

ping -c 2 www.linux.com输出:

PING www.linux.com (23.185.0.3): 56 data bytes64 bytes from 23.185.0.3: icmp_seq=0 ttl=42 time=117.995 ms64 bytes from 23.185.0.3: icmp_seq=1 ttl=42 time=310.108 ms--- www.linux.com ping statistics ---2 packets transmitted, 2 packets received, 0.0% packet lossround-trip min/avg/max/stddev = 117.995/214.052/310.108/96.057 ms我们可以看到输出内容中起对应的IP地址,如果需要过滤输出,增加更多相应的命令处理:

ping -c 2 www.linux.com | head -2 | tail -1 | awk '{print $5}' | sed 's/[(:)]//g'输出:

23.185.0.3

写在最后

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



关键词:对应,命令,通过

74
73
25
news

版权所有© 亿企邦 1997-2025 保留一切法律许可权利。

为了最佳展示效果,本站不支持IE9及以下版本的浏览器,建议您使用谷歌Chrome浏览器。 点击下载Chrome浏览器
关闭