我正在使用terraform配置EC2实例,然后创建指向该实例的DNS记录。在AWS上,建议在公共IP地址上使用静态IP地址,这样在重新启动时更改IP地址不会引起问题。但是通过terraform,DNS记录将使用新的公共IP /公共DNS进行更新。 因此,从理论上讲,我不需要弹性IP地址。
没有 eip ,我仍然能够使用AWS提供的公共IP地址和公共DNS /主机名进行SSH。但是,当将DNS记录(A或CNAME)指向公共IP地址和公共DNS时,SSH超时。即使在DNS记录传播时也会发生这种情况(我用dig domain.com 和全局DNS传播检查器进行了检查)。看起来有些东西阻止了非IP地址/非AWS公共DNS主机的访问。
有人将DNS记录直接指向公共IP /公共DNS时遇到这个问题吗?
答案 0 :(得分:1)
哦,哇。事实证明,这最终是DNS记录了。。。输入问题后,我重试了,它起作用了。最初由于某种原因,dig
返回了更新的记录,但是ssh
使用的是旧记录?这怎么可能!
为什么SSH使用旧记录?我可以使用dig
答案是DNS缓存!尽管dig会为我提供Cloudflare的DNS服务器的最新DNS记录,但我的计算机仍在使用旧的。因此,我不得不刷新DNS。在Mac上,我使用了sudo killall -HUP mDNSResponder
。然后,这带来了DNS欺骗检测到的消息,因此我不得不使用ssh-keygen -R domain.com