在我使用服务器的过程中,我遇到了配置文件,您应该在其中输入外部服务器的地址。我看到有些人直接使用服务器的 IP 地址,但我听到很多建议使用主机名完全限定域名(FQDN)。为什么我应该使用主机名而不是直接 IP 地址?
因为如果您使用主机名,那么您将需要一个本地 DNS 服务器,它将每个主机名链接到一个 IP 地址。使用主机名或 IP 地址有什么缺点?
在我使用服务器的过程中,我遇到了配置文件,您应该在其中输入外部服务器的地址。我看到有些人直接使用服务器的 IP 地址,但我听到很多建议使用主机名完全限定域名(FQDN)。为什么我应该使用主机名而不是直接 IP 地址?
因为如果您使用主机名,那么您将需要一个本地 DNS 服务器,它将每个主机名链接到一个 IP 地址。使用主机名或 IP 地址有什么缺点?
使用 IP 地址可确保您不依赖 DNS 服务器。它还具有防止通过 DNS 欺骗进行的攻击的好处。
使用 FQDN 而不是 IP 地址意味着,如果您要将服务迁移到具有不同 IP 地址的服务器,您将能够简单地更改 DNS 中的记录,而不是尝试找到使用 IP 地址的任何地方.
当您有多个由多个人配置的服务器和服务时,这尤其有用。
DNS 不仅仅是 FQDN = IP
DNS 的重要之处在于它提供的不仅仅是 A 记录(主机名 = IP)。DNS 有时会提供某些软件可能需要的不同类型的记录,例如 MX、CNAME、TXT 等。它允许多个地址记录、IPv4 + IPv6 记录、动态地址、负载平衡、基于地理位置的解析、故障转移/冗余等...... DNS 告诉你事情是什么(www.google.com 是 google 的网络服务,172.217 .4.110?那是什么?)它允许您更改这些设置/记录并让它们被客户端拾取,而无需对所有客户端进行更改。DNS 可以做复杂的事情。
使用 DNS 而不是直接 IP 地址通常具有明显的优势。
FQDN 可能是一项要求
有些事情,例如使用基于名称的虚拟主机或负载平衡器的 Web 服务器等……绝对需要您通过 FQDN 或主机名来寻址它们。他们根据您连接到的 FQDN 确定如何响应您的请求。通过 IP 连接可能根本不起作用。
SSL 证书是根据域名颁发的,因此您可能无法在没有 DNS 的情况下(正确地)使用某些启用 SSL 的服务。
这是 google.com 域的挖掘查询,让您了解 DNS 的复杂性
雅虎回复 3 个 IP 地址
使用 IP 地址的优势
对我来说,通常是 DNS 可能会以某种方式妨碍或不可用。一般来说,我会在大多数事情上使用 DNS。
IP 地址可能更好的一个示例是,当您有两台机器之间有直接链接(无交换机)和私有网络地址(例如 192.168.1.1 和 192.168.1.2),并且它们将其用于高可用性通信或 DRBD 或其他非常具体的服务。在这种情况下,在 DNS 中进行设置可能没有任何意义。这不是必需的,会增加复杂性、性能问题并可能引入故障点。
另一个例子是路由。路由表出于各种原因记录 IP 地址。
另一个是引用名称服务器(例如在 /etc/resolv.conf 中)。由于没有名称服务器,您无法解决任何问题。