从 WAN 到 LAN 的通配符子域名路由

从 WAN 到 LAN 的通配符子域名路由

我当前的设置:

  • 我没有从 ISP 获取静态 IP,因此我在 Google Cloud 实例上运行自己的 ddns
  • 我正在运行的 ddns 是一个来自https://github.com/dprandzioch/docker-ddns,然后我按照说明配置了 Google Cloud DNS
  • 域名foo.dyndns.domain.tld成功指向我的公网IP地址
  • dnsmasq在家里,我有一个正在运行的华硕 AC56U 路由器。
  • dnsmasq将所有local.dev请求指向我的本地网络服务器
  • port 80我已为我的网络服务器启用端口转发

我的 AC56U 路由器上的 dnsmasq 配置

address=/local.dev/foo.dyndns.domain.tld/192.168.1.100

Google Cloud DNS 中的 DNS 设置

ns.domain.tld.             A       300   35.xx.xx.xx
dyndns.domain.tld          NS      300   ns.domain.tld

目前有效的方法:

  • 所有*.local.dev请求均成功指向我的 LAN 网络内的 Web 服务器
  • foo.dyndns.domain.tld成功指向我 LAN 之外的网络服务器ping foo.dyndns.domain.tld并返回我的公共 IP。

我需要的

  • *.foo.dyndns.domain.tld指向我的 LAN 网络之外的网络服务器ping test.foo.dyndns.domain.tld会导致Unknown host
  • 我希望它能够自动发生,这样我就无需为开始从事的每个新项目更新 NS 记录。

重点是什么?

我是一名网络和移动应用开发者,我想允许我的客户访问我的本地开发服务器。不幸的是,我的网络经验非常有限。

我迄今为止尝试过

我尝试使用以下记录更新我的 Google Cloud DNS,但没有成功:

*.foo.dyndns.domain.tld    CNAME   300   dyndns.domain.tld

答案1

经过反复尝试,我终于找到了解决方案:

如教程中所述:https://github.com/dprandzioch/docker-ddns关于如何设置DNS,我只需要*.foo作为domain参数传递即可。

相关内容