我的服务器上有四张网卡,我为每个网卡分配了一个特定的 IP,现在我想hostname
为所有接口设置一个不同的 IP?
hostname
在文件中设置/etc/sysconfig/network
或有什么区别/etc/hosts
?
答案1
中的条目/etc/sysconfig/network
是 RHEL(以及衍生产品,例如 CentOS)设置主机名/节点名的地方,您将在例如 shell 的提示符、系统和日志消息等中看到它。这是gethostname(2)
和uname
系统调用将返回的主机名。
系统仅具有一个主机名/节点名,但它可以有许多接口。
您可以将无限数量的主机名(或者说 DNS 名称)指向每个接口、每个 IP 地址。多对一关系。
从 IP 地址到 DNS 名称的反向映射是一对一的。反向 DNS 查找(使用 PTR 记录或使用 /etc/hosts)将仅返回一个名称。
该/etc/hosts
文件只是一个将 IP 地址映射到主机名和将 IP 地址映射到主机名的本地查找表。如果您有一个可正常运行的 DNS 服务器,那么维护它通常比让不同系统上的许多主机文件保持同步更容易。
如果无法将主机名解析为 IP 地址,某些网络服务将启动缓慢、失败和/或给出警告(即在单用户模式下启动或 DNS 无法响应时),因此看到 /etc/hosts 也包含对主机名的引用并不罕见。
通常,该/etc/hosts
条目优先于 DNS,允许您在本地执行“有趣”的事情。