使用服务标签连接Google Cloud内部负载均衡器遇DNS解析问题求助
正确使用服务标签通过内部DNS访问GCP内部TCP/UDP负载均衡器
正确的DNS访问格式
根据你的配置,正确的内部DNS名称应该是:
fr-ilb-label.us-west1.lb.ilb-test-356804.internal
你之前的命令错误添加了示例中的web-test.前缀,这部分是自定义服务名,你的场景不需要额外添加。
排查与验证步骤
- 测试DNS解析
在客户端VM上执行以下命令验证解析是否正常:
nslookup fr-ilb-label.us-west1.lb.ilb-test-356804.internal
如果解析结果返回LB的IP地址10.1.2.99,说明DNS记录已生效。
- 尝试访问负载均衡器
解析正常后,直接用正确的DNS名称发起请求,如需指定端口(比如8080),格式如下:
curl http://fr-ilb-label.us-west1.lb.ilb-test-356804.internal # 指定端口示例 curl http://fr-ilb-label.us-west1.lb.ilb-test-356804.internal:8080
- 确认基础配置合规性
- 客户端VM必须与LB处于同一个VPC(
lb-network)或通过VPC对等连接的网络中。 - 客户端VM所在子网需启用内部DNS解析(默认启用,无需额外配置)。
- 防火墙规则需允许客户端VM访问LB的端口(80/8008/8080/8088)。
检查DNS记录同步状态
添加service-label标签后,DNS记录可能需要1-5分钟完成同步,若刚配置完成,可等待片刻后再测试。验证后端服务健康状态
确保后端实例组中有健康的VM,否则即使DNS解析正常,请求也会失败:
gcloud compute backend-services get-health be-ilb --region=us-west1
内容的提问来源于stack exchange,提问作者Nosail
相关产品推荐
相关产品推荐

