配置专用链接的Azure MySQL单服务器仍解析为公共名称
Azure MySQL单服务器专用链接DNS解析异常排查
以下是几个关键的配置检查方向:
1. 专用DNS区域配置验证
- 确认你创建的专用DNS区域后缀是**
privatelink.mysql.database.azure.com**,这是Azure MySQL单服务器专用链接对应的标准专用域名后缀,后缀错误会导致无法解析到专用IP。 - 检查专用DNS区域与VM所在VNet的VNet链接状态:确保VNet链接已成功创建且关联了VM所在的VNet,没有处于未完成或失败状态。
- 查看专用DNS区域内的记录:应该存在一条针对
server01的A记录,指向MySQL服务器的专用IP地址。如果没有这条记录,说明专用链接创建时未勾选自动注册DNS记录,或者注册流程出现异常,需要手动添加A记录(记录名填server01,IP填专用链接分配的专用IP)。
2. VM的DNS服务器配置检查
- 确认VM使用的是Azure默认DNS服务器(168.63.129.16):如果VM配置了自定义DNS服务器,该服务器必须能够将
privatelink.mysql.database.azure.com域名的查询请求转发到Azure DNS,否则会返回公网解析结果。 - 在VM上执行针对性解析测试:运行
nslookup server01.privatelink.mysql.database.azure.com,如果该命令返回公网IP,说明专用DNS区域未生效;如果返回专用IP,再检查主域名server01.mysql.database.azure.com的CNAME配置(正常情况下Azure会自动将其指向privatelink域名,无需手动修改)。
3. 专用链接资源配置检查
- 确认专用链接的目标资源:目标资源类型必须是
Microsoft.DBforMySQL/servers,且已成功关联到你的MySQL单服务器,状态显示为已批准(手动批准场景需确认服务器端已通过申请)。 - 检查专用链接的专用IP:确保分配的专用IP属于VM所在VNet的地址空间范围内,且状态正常。
4. 公网访问禁用状态验证
虽然解析到公网IP,但如果已正确禁用公网访问,该公网IP实际无法连接到MySQL服务器。可通过telnet server01.mysql.database.azure.com 3306测试,确认无法连通,排除公网访问未禁用的可能。
内容的提问来源于stack exchange,提问作者ossentoo
相关产品推荐
相关产品推荐

