DNS_PROBE_FINISHED_NXDOMAIN 将 EC2 用于 Google OAuth

DNS_PROBE_FINISHED_NXDOMAIN while using EC2 for Google OAuth

我在使用 ubuntu EC2 实例时得到 DNS_PROBE_FINISHED_NXDOMAIN 我的 google OAuth2.0 策略使用 Google API 平台。

选择所需的 GMAIL 帐户进行身份验证后,/google/callback 无法正常工作并返回 DNS_PROBE_FINISHED_NXDOMAIN

app.get("/google/callback", 
passport.authenticate('google', {
    successRedirect: "---ec2 url----",
    failureRedirect: '/authfailure'
}),
) 

我正在从 EC2 中的 .env 中选择 ec2 url。 请查看 https://github.com/shubham9919/OAuth2.0IMPL 以获取代码。

谢谢。

我遇到这个问题是因为 google 不想解析任何非静态 public IP 来进行身份验证。简而言之,我正在使用的 EC2 实例未附加到任何弹性 IP,因此 IP 不归我所有。如果我停止并启动我的实例,我将丢失我以前的 IP,并且 google 可能会开始向拥有该 IP 的其他服务器发送回调。 这可能是不允许此类 IP 进行回调身份验证的原因。

对于分辨率,我们可以使用:

{IP}.nip.io:{port}/google/callback 

解决了我的问题。 假设我们的 IP 是 172.4.5.6

172.4.5.6.nip.io:5000/google/callback resolves to => 172.4.5.6:5000/google/callback

这在生产环境中是不可取的,但在开发阶段可能是一个可行的解决方案。