如何在Windows,Mac或Linux上编辑主机文件

在 Windows 上,以管理员身份启动记事本(或其他文本编辑器)。打开主机文件,该文件位于 C:\Windows\System32\drivers\etc 下。在 Mac 和 Linux 上,选择使用文本编辑器编辑 /etc/hosts 文件 — 请务必使用 sudo 启动编辑器。

有时,您可能需要编辑计算机上的主机文件。您的主机文件可能在攻击中被恶意编辑,或作为恶作剧。或者,您可能只想控制对某些网站的访问或控制网络流量。

主机文件的用途是什么?

在实施DNS系统之前的几十年里,主机文件一直用于解析主机名,早在阿帕网时代。由于它们被用来帮助网络名称解析,主机文件发展成为大量文档。

Microsoft,Apple和其他操作系统开发人员保留了主机文件,这就是为什么Windows,macOS和Linux之间的差异很小的原因。语法在所有平台上基本保持不变。大多数主机文件将有多个用于环回的条目。我们可以将其用于典型语法的基本示例。

第一部分是要将地址重定向到的位置,第二部分是您要重定向的地址,第三部分是注释。它们可以用空格分隔,但为了便于阅读,通常由一个或两个制表符或等量的空格分隔。一般格式为:

(IP Address) (URL) #(Comment)

作为环回地址的具体示例:

127.0.0.1 localhosts #loopback

现在让我们看看访问不同操作系统中的主机文件。

在 Windows 10 或 Windows 11 上编辑主机文件

主机文件仍然存在于最新和最伟大的Microsoft – Windows 10和Windows 11 – 尽管按照计算机标准是古老的。但是,它在现代Windows网络中使用不多。

与可以在 Windows 文件夹中找到的其他文件一样,Windows 主机文件受到保护。您需要管理权限才能移动、编辑或删除文件。

您可以使用任何要修改主机文件的纯文本编辑器,但是记事本完全可以完成该任务。您无需为此工作下载另一个。

点击“开始”按钮,在搜索中键入“记事本”,然后右键单击它并点击“以管理员身份运行”。

打开“开始”菜单,键入

单击左上角的“文件”,点击“打开”,然后导航到Windows主机文件的位置:

C:\Windows\System32\drivers\etc

确保将选择更改为“所有文件 (*.*)”而不是“文本文档 (*.txt)”。hosts 文件没有文件扩展名,因此如果您只显示文本文档,它不会显示。更改该设置后,找到“主机”文件并单击“打开”。

使用记事本打开主机文件。确保将其更改为

然后,您可以根据需要编辑主机文件。有一些明显的事情可以处理它,例如阻止或重新路由互联网流量。

在 Windows 8 或 8.1 上编辑主机文件

在Windows 8和8.1上编辑主机文件与Windows 10或11基本相同。

只需搜索记事本,右键单击搜索结果列表中的记事本,然后选择“以管理员身份运行”。

打开记事本后,单击右上角的“文件”,单击“打开”,然后导航到 /etc/ 文件夹:

C:\Windows\System32\drivers\etc\hosts
Windows_10

您将能够像编辑任何其他文件一样编辑主机文件。如果需要,您可以使用它来阻止对网站的访问。

如果您收到错误,通知您没有权限,则您实际上并未以管理员身份运行记事本。

视窗 7

在 Windows 7 中访问主机文件与在较新版本的 Windows 上相同。您需要以管理员身份运行记事本,导航到主机文件,然后将其打开。

有几种方法可以做到这一点。首先是找到记事本,右键单击它,点击“以管理员身份运行”,然后导航到主机文件。它位于:

C:\Windows\system32\drivers\etc\

或者,您可以按 Windows+R 打开“运行”窗口,然后输入以下命令:

notepad c:\windows\system32\drivers\etc\hosts
2010-08-31-[19-41-19]

该命令将以管理员身份运行记事本并自动打开指定的文件。

打开记事本后,您可以编辑文件。在这个例子中,我们将阻止Facebook。为此,只需在 # 标记后输入以下内容。

0.0.0.0 www.facebook.com

您也可以使用环回地址而不是 0.0.0.0,但这基本上取决于个人喜好。

2010-08-31-[20-51-49]

现在您已经编辑了主机文件,请确保保存它。

2010-08-31-[20-54-07]

现在请注意,如果我们尝试在IE中访问Facebook,我们将无法访问该页面。

2010-08-31-[20-56-44]

我们也无法在谷歌浏览器中找到它……(检查最后的注释)。另外,有关编辑主机文件的更多信息,请查看 The Geek 的文章,了解如何创建快捷方式以快速编辑主机文件。

2010-08-31-[21-04-27]

在 Ubuntu 上编辑主机文件

在 Ubuntu(和大多数 Linux 发行版)中,您可以直接在终端中编辑主机文件。您可以使用自己喜欢的命令行编辑器或自己喜欢的 GUI 文本编辑器。在本例中,我们将使用 Vim,因为它是 Linux 中的传统文本编辑器之一。Ubuntu 的主机文件位置是 /etc/ 文件夹。主机文件受到保护,与在 Windows 中非常相似,您的常规用户帐户将无法对其进行编辑。

您需要以 sudo 开头启动 Vim,它在概念和功能上类似于 Windows 操作系统上的“以管理员身份运行”。打开终端,然后输入:

sudo vim /etc/hosts

您需要先输入密码,然后才能执行命令。

如果您收到一条消息通知您未安装 Vim,只需在终端中运行 “sudo apt install vim”。

跑

现在它已经打开,我们可以编辑它以将Facebook重定向到无所事事。你会注意到,在Ubuntu中,还有一个关于IPv6的部分。

在大多数情况下,您可以忽略 IPv6 部分;只需编辑 IPv4 部分即可满足您的需求。

主机文件中将阻止 Facebook 的条目。

现在我们可以保存文件并尝试转到 Facebook.com。当您将主机文件中的地址设置为 0.0.0.0 时,您的计算机无法访问 Facebook,并引发错误:“无法连接”。

浏览器无法连接到 Facebook.com。

如果您的浏览器已配置为使用 DNS over HTTPS 及其自己的 DNS 服务器,则编辑主机文件可能不会阻止访问。

在任何 macOS 版本上更改主机文件

在macOS中,访问主机文件与Ubuntu非常相似。从终端开始并使用您最喜欢的编辑器 — 如果您愿意,它甚至可以是基于 GUI 的文本编辑器,但从终端使用命令行编辑器更容易。

macOS上的主机文件就像在Linux上一样。/etc/

在 Mac 上以 sudo 用户身份运行 vi。

该文件看起来很像Windows和Linux中的主机文件。我们将再次将Facebook重定向到0.0.0.0。

macOS Ventura上的主机文件。

Safari,就像Windows和Ubuntu上的浏览器一样,将无法连接到Facebook。

Safari与Facebook的连接被阻止了。

为什么主机文件不阻止连接?

所有主要的现代浏览器都提供基于 HTTPS 的 DNS (DOH)。DOH 对您的 DNS 请求进行加密,以便它们不会被可能窥探—的第三方拦截和读取,这是一件好事。

出于我们在这里的目的,它限制了主机文件的实用程序。仅当您的浏览器推迟到 Windows 操作系统中指定的 DNS 服务器时,主机文件才能用于阻止互联网流量。许多浏览器会自动启用 DNS over HTTPS 并使用自己的 DNS 服务器。这会导致浏览器完全绕过主机文件。可以强制您的浏览器使用 Windows 指定的 DNS 服务器,但您必须深入研究浏览器的设置。

这应该可以帮助您开始了解主机文件以及它如何帮助保护您的计算机。在适当的情况下,您可以使用它来阻止不希望 PC 访问的站点。

未经允许不得转载:表盘吧 » 如何在Windows,Mac或Linux上编辑主机文件