我在VPC的Elastic Beanstalk自动缩放组中启动了两个EC2实例。 这些EC2实例上的应用程序需要连接到使用IP地址白名单来允许访问的第三方服务。 所以我使用NAT网关来获得静态IP,以便将它们添加到白名单中。 第三方已经允许从我在aws控制台上configuration的两个NAT网关访问IP。 但我不能连接。 在接受任何IP连接的开发环境中,应用程序运行正常。
有可能我使用错误的IP? 我可以使用哪个命令来知道我的应用在互联网上获得了哪个IP? 我做了从服务器到第三方服务的traceroute,它没有显示NAT Gatewa IP,是吗?
通过NAT设备(网关或实例)独立地识别/确认您使用的源地址的一种有效方法是向Internet上的服务发出出站请求,该出站请求将通过识别其看到的源地址您的请求到达。
这样的服务的一个例子…
$ curl icanhazip.com # this the actual URL for the service 203.0.113.9 # example response for IPv4
在出站跟踪路由中,通常不会看到NAT设备的外部源地址,因为该地址通常位于正在转移的设备的远端,响应(如果提供的话)通常是接口面向你。