![如何在 SSH 中找出已知主机的 IP](https://linux22.com/image/1510605/%E5%A6%82%E4%BD%95%E5%9C%A8%20SSH%20%E4%B8%AD%E6%89%BE%E5%87%BA%E5%B7%B2%E7%9F%A5%E4%B8%BB%E6%9C%BA%E7%9A%84%20IP.png)
第一次连接 ssh 主机后,系统会提示您将主机添加到受信任的known_hosts
文件,并获得 IP。
警告:将 IP 地址的 RSA 主机密钥永久添加
<IP>
到已知主机列表中。
我有一个提示这个答案我可以使用以下方法检索一些不可读的编码信息:
ssh-keygen -H -F <example.com>
那么给定主机名并且我已经以这种方式保存了 IP,我该如何检索该 IP?
答案1
不确定我是否理解了你的问题。
如果是为给定的主机名解析 IP,那么您只需执行host <fqdn of server>
。 host 命令解析正向和反向查询,因此您也可以执行host <IP of interest>
,您将获得 FQDN 主机名作为答案。您可以使用nslookup
,dig
甚至ping
(仅提及其他一些),但 host 是我个人最喜欢的,因为它提供了 IP 和服务器名称之间联系的最少信息。
请注意,使用可能与(进行 DNS 查询)ping <FQDN>
不同,并且(在大多数默认网络设置上)将首先转到 hosts 文件。host
ssh
ping
这意味着 - 如果您有一个将/etc/hosts
192.168.1.100 指向 some.server.com 的条目,ssh some.server.com
则将尝试连接到该 IP,而不是您从 DNS 获取的 IP(如果它们不同)。
需要注意的另一件事是,主机 IP 不必与主机 FQDN 匹配,例如,我使用托管服务,当我使用主机 FQDN 并在主机 IP 中使用答案中的 IP 时 - 我将不会获得我的 FQDN - 相反,我将获得托管服务器的 FQDN(因为我的 FQDN 是托管服务器的别名)。
为了使这更令人困惑 :) 如果我ping www.google.com
得到 159.... IP,并且dig www.google.com
我得到 15 个以 212 开头的 IP。这只是让您知道 IP 解析的名称首先取决于所使用的命令/应用程序,然后取决于一些操作系统网络设置等等......