Google Cloud Run 下的 oauth2-proxy 因在 IPV6 上查询 DNS 而无法通过提供商登录

Google Cloud Run 下的 oauth2-proxy 因在 IPV6 上查询 DNS 而无法通过提供商登录

我正在实施oauth-代理Bitnami 容器)为我公司的后端服务谷歌云运行,具有不同的设置和各种提供商(Azure/Microsoft Entra 和 Google)。针对 Google 提供商执行登录时,出现此错误:

error performing request: Post
"https://www.googleapis.com/oauth2/v3/token": dial tcp: lookup www.googleapis.com
on [::1]:53: read udp [::1]:55482->[::1]:53: read: connection refused

我认为,这是由于服务正在 IPv6 上查询 DNS 而导致连接被拒绝(Azure 提供商也会出现这种情况,由于同样的问题,容器根本无法启动)。它在本地和正常的 Google Cloud Compute VM 上工作正常。由于容器无法通过 IPv4 查询 Google API 服务,我想强制使用 IPv4

我已经尝试通过添加到强制在容器级别禁用 IPv6net.ipv6.conf.all.disable_ipv6 = 1来解决这个问题/etc/sysctl.conf,但仍然有相同的消息。

我已经设置网络以使用 VPC 并启用 IPv6,但仍然不起作用。

还有什么我可以编辑的设置吗?提前谢谢。

答案1

根据@JohnHanley 的评论以社区维基形式发布:

容器配置不正确,因为它试图连接到本地主机[::1],并且它与 VPC 设置或 IPv6 无关。

目前,Cloud Run 不支持 IPv6,您可以通过以下方式配置网络私有云平台。目前仅支持 IPv4。您可以使用带连接器的 VPC或者共享 VPC。请注意,IPv6 流量不受支持,因为其局限性

相关内容