如何使用终端命令行获取主机名?

如何使用终端命令行获取主机名?

我已经在终端中使用 arp-scan 来获取 ipaddress 和 mac 地址,有什么办法可以知道终端中 ipaddress 的主机名吗?例如,有 A-pc、B-pc 和 C-pc 连接到同一个路由器。我需要以与在 arp-scan 中获得结果相同的方式获取主机名。有什么命令吗?请回复。谢谢。

PS:我不想使用 wireshark 或任何其他软件。如果有终端命令会很有帮助。

答案1

假设你已经设置了本地 DNS 服务器,那么 dig 就可以了

dig +short -x 123.456.789.12

(是的,这不是一个有效的 IP,这是一个好莱坞 IP)

答案2

尝试 nslookup

注意:所有工具都需要具有反向查找区域的 DNS。(默认为仅正向查找区域)。这就是为什么它可以在大多数外部域(互联网)上工作,因为它们在整个互联网上的 DNS 中注册。对于内部网络,您需要一个内部 DNS 反向查找服务器。检查以下链接

答案3

从 IP 地址获取主机名。最简单的方法是使用“host”实用程序。只需运行...

# host 64.233.187.99
output is: #99.187.233.64.in-addr.arpa domain name pointer jc-in-f99.google.com.

这将查询名称服务器并为您提供 IP 地址的主机名。默认情况下,它将查询 /etc/resolv.conf 文件中列出的名称服务器。

答案4

我假设您想要 netbios 名称?

sudo apt-get install nbtscan
echo will scan: $(hostname -I | cut -d ' ' -f 1)/24
nbtscan $(hostname -I | cut -d ' ' -f 1)/24

相关内容