如何从IP获取主机名(Linux)?

xa9qqrwz  于 2023-02-07  发布在  Linux
关注(0)|答案(4)|浏览(237)

我想通过IP地址获取远程机器/主机名。我找到了很多答案,如nslookup,host,resloveip等。但我仍然不能从我的目标机器(分操作系统,ubuntu等...)主机名似乎需要注册到DNS服务器?
我有一台名为test且使用IP10.1.27.97的计算机
但是我用上面的方法还是不能得到“test
有人能帮我从IP地址中得到主机名吗?

v8wbuo2f

v8wbuo2f1#

要按IP地址查找本地网络中的主机名,可以使用nmblookup from the samba suite

nmblookup -A <ip>

要在Internet上查找主机名,可以使用host程序:

host <ip>

或者,您可以通过运行以下命令来安装nbtscan

sudo apt-get install nbtscan

并使用:

nbtscan <ip>
  • 改编自www.example.comhttps://askubuntu.com/questions/205063/command-to-get-the-hostname-of-remote-server-using-ip-address/205067#205067

更新日期:2018年5月13日
你可以用nslookup查询一个名称服务器,它可以双向工作!

nslookup <IP>
nslookup <hostname>
beq87vna

beq87vna2#

为了使用nslookuphostgethostbyname(),目标的名称需要注册到DNS或在运行程序的机器上的hosts文件中静态定义。是的,您可以使用SSH或其他应用程序连接到目标并直接查询它,但对于一般的解决方案,您需要某种DNS条目。

pbossiut

pbossiut3#

我发现的另一种在局域网中使用的简单方法是

ssh [username@ip] uname -n

如果需要登录命令行将

sshpass -p "[password]" ssh [username@ip] uname -n
xlpyo6sf

xlpyo6sf4#

不需要知道连接的IP:

sh -c "IP=\$(curl -s checkip.dyndns.org | sed -e 's/.*Current IP Address: //' -e 's/<.*$//'); nslookup \$IP | grep 'name =' | awk '{print \$NF}'"

相关问题