You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

同一域名同时使用Azure专用DNS与Route 53公网DNS的实现方案咨询

同一域名同时使用Azure专用DNS与Route 53公网DNS的实现方案咨询

嘿,这个场景我太熟悉了——很多迁云的团队都会碰到Azure私有DNS的权威特性和公网DNS共存的问题,给你两个最实用的解决思路,不用维护两份Zone文件:

1. 用Azure DNS Forwarding Ruleset实现“私有记录优先,公网记录转发”

这是最贴合你需求的原生Azure方案,不用额外维护服务器,还能完美兼容Application Gateway这类Azure服务:

  • 先创建一个Azure DNS Forwarding Ruleset,并把你的目标VNET关联到这个Ruleset上
  • 在Ruleset里添加一条转发规则:指定域名myapp.com,转发目标填Route53托管区的官方名称服务器地址(你可以在AWS Route53的myapp.com托管区详情里找到这些地址)
  • 把你已有的Azure私有DNS区myapp.com和这个Forwarding Ruleset做集成(在私有DNS区的“关联”设置里选择对应的Forwarding Ruleset)
  • 这样VNET内的机器查询myapp.com域名时,会先检查Azure私有DNS区的内部记录(比如sql.myapp.com),如果找不到匹配的记录,就自动把查询转发到Route53的公网DNS服务器,获取公网的myapp.com相关解析结果

2. 部署自定义DNS服务器(复刻你之前的DNSMASQ方案)

如果你更习惯之前的玩法,也可以在Azure里部署高可用的自定义DNS服务器(比如用两台Ubuntu VM搭建DNSMASQ集群):

  • 在DNSMASQ里只配置你需要的内部myapp.com记录(比如在hosts文件里添加sql.myapp.com对应内部IP)
  • 配置DNSMASQ把未匹配的myapp.com查询转发到Route53的名称服务器,其他域名可以转发到公网通用DNS(比如8.8.8.8)
  • 把你的Azure VNET的DNS服务器设置改为指向这两台自定义DNS服务器的私有IP
  • 这个方案的好处是完全复刻你之前的机房环境,学习成本低,但需要你自己维护DNS服务器的高可用和性能

额外测试小贴士

配置完成后,可以在VNET内的VM上用nslookup命令验证:

  • 执行nslookup sql.myapp.com应该返回你配置的内部私有IP
  • 执行nslookup myapp.com应该返回Route53中配置的公网Web服务器IP

备注:内容来源于stack exchange,提问作者S.Gia

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.20 07:43:07