对于我来说,这个设置已经失败了两次;在两个不同的路由器上。现在我听说这可能是 HTTPS 的问题,而不是路由器的问题。我很想听听专家为我提供的潜在解决方案。
问题
我想将本地网络中部分 PC 的 Internet 访问权限限制为一小部分网站。例如,这些特定 PC 应该能够访问 google.com、khanacademy.org 和少数其他网站,但不能访问其他任何网站。
方法
路由器提供两种家长控制,即黑名单和白名单。白名单提供的功能正是我需要的;也就是说,我可以输入 MAC 地址允许访问的网站列表,然后路由器将不允许该机器访问任何其他网站。
失败
我尝试过两家不同公司的两台路由器;一台是 TP-LINK 的 Archer D7,另一台是华为的 EG8247H5。两台路由器都提供了家长控制中的黑名单和白名单功能,但实际上都不起作用。为机器的 MAC 地址配置白名单不会改变该机器的互联网访问。所有网站都可以访问,就像没有白名单一样。
新理论
我联系了我的 ISP 以解决此问题。他们告诉我,由于 HTTPS,过滤互联网访问几乎是不可能的。信息包是端到端加密的,因此路由器无法知道正在访问的服务器名称,从而使此白名单功能完全无用。我反驳说,如果真是这样,那么路由器公司为什么一开始要添加此选项?他们说,该公司的一些高端型号实际上具有专门的硬件,可以深入挖掘这些数据包并从中获取目标服务器名称,但这些公司为了省钱,为所有型号部署了一个通用软件,该软件包含所有功能,甚至包括低端型号不支持的功能。
我不知道这个故事有多真实;ISP 是否只是想玩游戏,或者这是否是事实。是否有人成功配置了路由器级白名单?如果是,你使用的是什么路由器(只是为了证明 HTTPS 故事不是真的)。
答案1
我终于能够使用 OpenDNS 来解决这个问题。它不是 100% 安全的,熟练的人可以轻松避开/解除设置。如果你的孩子和我一样还小,不太懂技术,那么这可能足以提供足够的安全性。
程序是设置一个(免费)OpenDNS 帐户开放DNS然后更改计算机的 IPv4 属性以使用其服务器作为 DNS,而不是默认服务器。然后,您可以配置 OpenDNS 帐户以仅允许某些类别的网站。
整个过程很小,只需几分钟即可完成。有关 DNS 设置的更多详细信息,请参阅这里。
由于我们大多数人不使用静态 IP 地址,因此每当我们的 ISP 为我们分配新的动态 IP 时,我们都需要更新 OpenDNS 帐户中的 IP 地址。幸运的是,OpenDNS 还提供了一个小型 Windows 实用程序,它将在后台持续运行并自动为我们完成这项工作。
严格来说,OpenDNS 不提供白名单机制,即指定仅允许访问的网站列表。相反,它提供了一个包含 63 个(截至本文撰写时)广泛内容类别的列表,您可以选择要阻止哪些内容。此外,您还可以将特定 URL 列入黑名单。