如何设置路由器 DNS 以从 LAN 访问网站

如何设置路由器 DNS 以从 LAN 访问网站

我有 Netgear R7000,并在其后面托管一个网站。如果从 LAN 外部访问,该网站可以正常工作。如果从 LAN 内部访问,则无法访问该网站,除非:

1)对于 mac、ubuntu,在 /etc/hosts 中添加条目,例如:

{Web 服务器 LAN 的 ip} my.site.com

192.168.7.33 我的.site.com

2) 然后该计算机就可以从 LAN 访问网站了。

3) iPhone、iPad 无法通过 LAN 工作。iPhone 可以通过 WAN 工作!

路由器的 DNS 设置中缺少什么才能使一切正常工作?

我不想在 /etc/hosts 中添加任何内容。

答案1

路由器的 DNS 设置中缺少什么?

您很可能缺少 下的 LAN DNS 服务器条目Advanced → WPS Wizard → Setup → Internet Setup → Name Server (DNS) Address

此条目通常默认为Get Automatically from ISP

例如自动从 ISP 获取

从 ISP 设置自动获取 - 屏幕截图

需要将其设置为Use These DNS Servers

例如使用这些 DNS 服务器

使用这些 DNS 服务器设置 - 屏幕截图

注意事项

您需要自己的本地 DNS 服务器才能使此解决方案正常运行。

笔记

  • 1.2.3.4以上只是示例。需要将其替换为您本地网络上的 DNS 服务器的 IP。

  • 您将路由器指向的 LAN DNS 服务器必须具有您的域的条目,例如my.side.com指向您的 Web 服务器的本地 IP(即,与您最初在文件中输入的 IP 相同hosts)。

  • Primary DNS对于简单的设置,在和字段中使用相同的 IPSecondary DNS即可。但是,如果您愿意,可以在网络上设置两个名称服务器。

  • 为了能够继续在本地或互联网上访问您的域名,您的 LAN DNS 服务器必须始终处于开启状态。

  • 任何 LAN DNS 服务器都必须具有允许将未知地址(即除 之外的任何地址my.side.com)转发到可以解析这些查询的其他名称服务器的条目。这可以采用名称服务器直接查询根名称服务器的形式,也可以设置转发器。后一种选择可以是您的 ISP 名称服务器或公共 DNS 服务,例如 Google(8.8.8.8/8.8.4.4)或 Cloudflare(1.1.1.1)。

  • 您决定使用的任何 DNS 服务器通常都可以与托管您网站的服务器位于同一台服务器上。

进一步阅读

如果你需要一些关于设置的一般提示绑定(流行的 DNS 服务器)具有本地域,您可能需要查看以下问题。第一个问题直接针对在 Windows 上设置 BIND,但 BIND 也可用于 Linux,并且实际配置文件本身通常基本相同。

答案2

你显然正在尝试做 内网回环,即从本地局域网连接到互联网,然后再连接回来。

您已通过将/etc/hosts网站与 LAN 网络内的本地 IP 地址关联起来解决了该问题,从而避免了通过 Internet,但此解决方案并不适用于您的所有设备。

据称 Netgear R7000(Nighthawk AC1900)支持 Nat Loopback Netgear 自身,这也得到了验证 用户测试,因此它对您不起作用,这令人费解。

尝试将 Netgear R7000 的固件升级到 最新版本,如果它不起作用,请致电 Netgear 支持。

在紧急情况下,您可以尝试使用第三方固件,例如 Tomato 或 DD-WRT,但这是一个危险的操作,而且不能保证有帮助。

相关内容