如何在不修改 hosts 文件的情况下临时在本地设置 example.com 解析为 127.0.0.1

如何在不修改 hosts 文件的情况下临时在本地设置 example.com 解析为 127.0.0.1

我刚刚更新了我域名的 DNS 记录,但它们需要一段时间才能在互联网上传播。在此之前,我能否以任何方式临时设置我的域名,比如在本地box.example.com解析为 IP 地址127.0.0.1

我不想修改我的主机文件,sudo echo "127.0.0.1 box.example.com" > /etc/hosts因为几个小时后,DNS更改就会通过互联网传播。

我可以在不需要管理权限的情况下执行此操作吗?

答案1

您的问题似乎有些模糊,因此我为您准备了两个单独的答案:

  1. 如果您要问的是是否可以从服务器/etc/hosts文件写入 DNS 记录,答案是否定的。您可以/etc/hosts随意更改,但这只会影响服务器对相应 IP 地址的看法,而不会影响互联网对 IP 地址的看法。这就是 DNS 的目的——将域名解析为互联网范围内的特定 IP 地址。来源:DNS 的维基词典定义
  2. 如果你问的是你是否可以别名可以将 IP 地址转换为域名,答案是肯定的。编辑 /etc/hosts 文件就可以做到这一点。最有可能的是,暂时执行此操作的最佳方法是简单地sudo nano /etc/hosts添加相关别名,例如127.0.0.1 box.example.com,然后将其删除。要为 IP 地址创建别名无管理权限,按照你的要求,我真的不相信这是可能的。如果我遇到任何相反的信息,我会立即更新我的答案。

答案2

我认为您误解了该/etc/hosts文件的作用。

/etc/hosts文件确实不是在互联网上传播。它只适用于并影响您计算机上的本地查找。例如,10.0.50.123 mydmzbox在我的文件中/etc/hosts,该“主机名”实际上不会解析到其他任何地方,无论是互联网还是其他地方,而只是作为我的计算机的连接别名存在。

如果您将条目添加到/etc/hosts其中,则只会影响您的本地计算机,而不会影响其他任何计算机 - 无需担心更改会/etc/hosts传播到互联网。(您考虑的是 Bind 内的区域文件,但这与在其中放入条目不同/etc/hosts。)

相关内容