google-cloud-platform - 通过 HTTP/2 上的 gRPC 流访问 GCP 机器学习 API 的静态 IP
问题描述
我们生活在企业代理/防火墙后面,它只能使用静态 IP 规则而不是 FQDN。对于我们的项目,我们需要访问 Google Speech To Text API https://speech.googleapis.com
:. 如果在公司网络之外,我们使用 gRPC 流 over HTTP/2 来做到这一点。
理想的场景如下所示:
Corporate network -> static IP in GCP -> forwarded gRPC stream to speech.googleapis.com
我们尝试的是创建一个全局静态外部 IP,但在配置负载均衡器时失败,因为它只能连接到虚拟机而不是 API。
或者,我们正在考虑使用nslookup speech.googleapis.com
IP 地址范围的输出并每天更新它,尽管它看起来很“脏”。
我知道我们可以配置计算引擎资源/虚拟机并转发流量,但这看起来也不是一个优雅的解决方案。最好,我们可以使用现有的 GCP 网络组件来实现这一点。
非常感谢您的任何指点!
解决方案
Google 不会发布 CIDR 块供您使用。您每天都会为尝试将 IP 地址列入白名单而感到悲伤。Google 的大多数 API 服务都以全球前端 (GFE) 为前端。这使用 HTTP 主机标头来路由流量而不是 IP 地址,这将导致路由失败。
尝试查找 IP 地址可能是个问题。DNS 不必在每次调用中为名称解析返回所有 IP 地址。这意味着 DNS 查找现在可能会返回一组地址,而一个小时后可能会返回另一组地址。这是一个让您将 IP 地址列入白名单的悲痛示例。
解决方案:与您的防火墙供应商联系。
推荐阅读
- cordova - 无法运行 sass 任务:gulpfile.js 中缺少
- php - 什么是 PHP 中用于 Magento2 的“require_once”的替代品,以解决 Magento 商店中的 CodeSniffer 测试问题?
- wpf - WPF TreeViewItem 水平对齐
- php - 使用 CASE 查询时产生的别名问题
- javascript - 如何在不丢失格式的情况下实现 sql 的代码折叠/折叠
- intellij-idea - gradlew clean deployNodes - QUASAR 警告:Quasar Java 代理未运行
- soap - 错误:在 Sabre 发送 CreatePassengerNameRecordRS 请求时出现 ERR.SP.BUSINESS_ERROR
- c++ - 什么是 msvc_x64_x64 以及与 msvc_x64 有何不同
- c# - 如何在 C# 中隐藏打印弹出窗口?
- python - 损失在 Pytorch 中不会收敛,但在 TensorFlow 中会收敛