如何通过主机名(或别名)查找IP地址?

您好我被要求通过主机名(或别名)在Redhat服务器检查IP地址。 在一些sh脚本中,有一个lftp开放连接到外部ftp服务器的代码。 第一个lftp连接使用“host1”。 ping host1显示host1.domain.com。 另一个ping host2显示unknows主机。 我如何检查在Redhat的IP地址绑定到host2? 我试图检查主机文件,没有条目。 有没有其他的地方把主机/别名映射到真正的IP?

等/ nsswitch.conf的:

 #
 #/etc/nsswitch.conf
 #
 #一个名称服务交换configuration文件的例子。 这个文件应该是
 #开始时使用最常用的服务sorting。
 #
 #条目'[NOTFOUND = return]'表示search一个
 #条目应停止,如果在前面的条目search转向
什么都没有。 请注意,如果search失败,由于其他原因
 #(就像没有NIS服务器响应),然后search继续
 #下一个条目。
 #
 #法律条目是:
 #
 #nisplus或nis +使用NIS +(NIS版本3)
 #nis或yp使用NIS(NIS版本2),也称为YP
 #dns使用DNS(域名服务)
 #文件使用本地文件
 #db使用本地数据库(.db)文件
 #compat在compat模式下使用NIS
 #hesiod使用Hesiod进行用户查找
 #[NOTFOUND = return]停止search,如果没有find
 #

 #要使用db,把“db”放在“files”的前面,作为你想要的条目
 #在数据库中首先抬头
 #
 #示例:
 #passwd:db文件nisplus nis
 #shadow:db文件nisplus nis
 #group:db文件nisplus nis

 passwd:文件
影子:文件
组:文件

 #hosts:db文件nisplus nis dns
主机:文件dns

 #例子 - 只服从nisplus告诉我们...
 #services:nisplus [NOTFOUND = return]文件
 #networks:nisplus [NOTFOUND = return]文件
 #protocols:nisplus [NOTFOUND = return]文件
 #rpc:nisplus [NOTFOUND = return]文件
 #ethers:nisplus [NOTFOUND = return]文件
 #netmasks:nisplus [NOTFOUND = return]文件

 bootparams:nisplus [NOTFOUND =返回]文件

醚:文件
networking掩码:文件
networking:文件
协议:文件
 rpc:文件
服务:文件

谢谢。

用于限定不合格主机名的域可以在/etc/resolv.conf文件中设置。 如果您的resolv.conf文件中提到的域中不存在host2则无法parsing该名称,从而显示错误消息。

通常,任何主机都会尝试使用hosts文件来parsing名称。 如果失败,它将尝试查询configuration的DNS服务器来parsing名称。

有一个名为/etc/nsswitch.conf的configuration文件,它决定了名称parsing过程的顺序。

如果您find如下行:

 hosts: files dns 

这意味着首先查询主机文件,然后查询DNS服务器。 DNS服务器可以在/etc/resolv.confconfiguration。

您可以使用以下命令查询DNS服务器以进行名称parsing:

 $ dig host1.example.com 

nslookup可以做类似的工作。