我设置了一个 DynDns 帐户,将域名指向我家里的动态 IP 服务器。从任何“外部”网络,连接都可以正常工作并指向我的服务器。但是当我从 LAN 内部将浏览器指向我的 URL (xxxx.dyndns.org) 时,它会转到我的 ADSL 调制解调器的登录页面。
我究竟做错了什么?
答案1
您没有做错任何事,这正是 DynDNS 的工作方式。DynDNS 会返回您家庭互联网连接的公共 IP,路由器会对此做出响应。由于您位于网络内部,因此它假设您想要连接到路由器本身而不是端口转发规则,因为您已经在防火墙后面。为了能够在网络内部使用您的 DynDNS URL,您的路由器需要支持 NAT 反射(或端口反射)。这允许内部用户连接到您的公共 IP,并通过路由器的端口转发规则反射回正确的内部 IP。
如果您没有这个,您将需要运行双 DNS,或者使用其他方法,例如在网络内部时覆盖您的主机文件。
答案2
如果您的路由器不支持 NAT 反射,您可以使用端口转发,但这在很大程度上取决于您托管的内容。
答案3
您需要 NAT 反射。在我的 (Zyxel USG60W) 路由器上,此功能称为 NAT 环回。可以在 NAT/端口转发页面上找到它。首先,我收到警告,因为我已将我的外部/原始 IP 设置为任意。通过将其设置为我的 WAN1 端口的公共地址来修复它。您可以通过创建地址对象并选择接口 IP,然后选择 wan1 来自动获取地址。
答案4
我遇到了同样的问题。我最终dnsmasq
在我的局域网中的一台机器上进行了安装,并将此行添加到dnsmasq.conf
:
address=/MY_DDNS_DOMAIN/192.168.0.101
然后使用该机器作为 DNS 服务器。
这样做的目的是将 ddns 域名映射到我的局域网中所需的 ip。问题解决了。