【问题标题】:EC2 Public DNS changed but Nginx reverse proxy still worksEC2 公共 DNS 已更改,但 Nginx 反向代理仍然有效
【发布时间】:2018-11-11 19:31:24
【问题描述】:

这是场景:

  • 存储和服务example.com的EC2实例1
  • 存储和服务subdomain.example.com的EC2 instance2

因此,每次 instance1 收到对 subdomain.example.com 的 HTTP 请求时,它都会将其重定向到 instance2。 Instance1 附加了一个弹性 IP,因此公共 IP 永远不会改变,但是对于 instance2,我只使用它的公共 DNS。在我的 Nginx 服务器块(实例 1)上,我使用其公共 DNS 将 http 请求重定向到实例 2。

问题是,我已重新启动(停止/启动)我的 instance2,它的公共 DNS 已更改,但重定向到其“旧”公共 DNS 仍然有效,应用程序仍然正常工作。

有人知道为什么会这样吗?我只是想确定一切都好,不喜欢惊喜……

【问题讨论】:

  • 我认为当您重新启动实例时,只有公共 IP 会发生变化,而公共 DNS 不会发生变化。因此公共 IP 可能与公共 DNS 不匹配。
  • 你为什么不 dig 旧的公共 DNS 看看会发生什么。公共 DNS 是从公共 IP 构建的,因此如果在停止/启动后 instance2 的公共 IP 发生变化,那么公共 DNS 也会发生变化。旧的 DNS 无法解析为 instance2。也可以查看instance2的nginx日志。
  • @Asdfg 我检查了公共 DNS,它改变了......以及 IP。
  • @helloV 既然你提到了它,我在 nginx 访问日志(在实例 2 上)中看不到任何内容,这是因为所有流量首先在实例 1(反向代理)中接收然后重定向实例2?我认为即使流量在重定向时首先到达 instance1,我也可以在我的 instance2 上看到日志...

标签: amazon-web-services nginx amazon-ec2 dns nginx-reverse-proxy


【解决方案1】:

我认为这是由于 DNS 传播中的 TTL 延迟。过了一段时间你就看不到它的工作了。

【讨论】:

  • 是的,我相信这是唯一可行的理由。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-03-23
  • 1970-01-01
  • 2020-07-30
  • 2021-04-25
  • 1970-01-01
  • 2014-01-23
  • 2020-03-17
相关资源
最近更新 更多