Amazon web services 使用AWS SDK通过直连、VPC和VPC端点从本地世界访问AWS S3

Amazon web services 使用AWS SDK通过直连、VPC和VPC端点从本地世界访问AWS S3,amazon-web-services,amazon-s3,routing,amazon-vpc,aws-direct-connect,Amazon Web Services,Amazon S3,Routing,Amazon Vpc,Aws Direct Connect,我们的设置: 我们有一个本地服务器,希望从中向S3发送数据(使用AWS Java SDK) 我们的内部数据中心通过直接连接连接到AWS 在AWS方面,有一个VPC,它有一个指向S3的VPC端点 我们的假设是所有东西都正确路由(前提是可以在AWS中看到VPC)。假设VPC CIDR范围为10.10.10.0/24 当我们在SDK中调用“PutObject”(但可以是任何S3方法)并给出我们的bucket名称时,来自SDK的结果请求的目标是一个公共S3 IP地址(52.xxx)。但是,这不会被

我们的设置:

  • 我们有一个本地服务器,希望从中向S3发送数据(使用AWS Java SDK)
  • 我们的内部数据中心通过直接连接连接到AWS
  • 在AWS方面,有一个VPC,它有一个指向S3的VPC端点

我们的假设是所有东西都正确路由(前提是可以在AWS中看到VPC)。假设VPC CIDR范围为10.10.10.0/24

当我们在SDK中调用“PutObject”(但可以是任何S3方法)并给出我们的bucket名称时,来自SDK的结果请求的目标是一个公共S3 IP地址(52.xxx)。但是,这不会被路由为:直连->专有网络->专有网络端点->S3,而是我们的路由器将流量路由到internet代理(默认为0.0.0.0/0路由)-因为专有网络CIDR范围为10.10.10.0/24

我的问题是(显然):有没有一种正确的方法可以通过AWS Direct Connect而不是互联网来路由流量

我希望有这样的事情:

  • SDK命令中有一个选项,可以将附加的IP添加到 应该首先发送哪个请求
  • 有一些S3的前提 我们可以提供的服务
  • 在一些菜单中有一个简单的按钮 可按的相关服务

免责声明:我不是真正的网络或AWS infra master,请原谅我的含糊不清。

如果不使用Direct Connect private VIF,您无法通过直连专用VIF访问VPC端点

您可以改为分配公共VIF。当您在VGW中启用路由传播时,AWS会将所有公共路由播发到客户的路由器,因此该地区AWS服务的所有流量都通过直连

公共虚拟接口可以使用公共IP地址访问所有AWS公共服务。 公共虚拟接口允许您全局连接到所有AWS公共IP空间。任何直连位置的直连客户都可以创建公共虚拟接口来接收亚马逊的全球IP路由


谢谢你的回答。理解。我有两个非常模糊的问题=首先,设置有多困难/有多大影响。第二,从安全的角度看可以吗?是否存在任何可能的灰点?类似于设置私人VIF,但您应该只了解路由策略和BGP社区:正确答案,这里也介绍了这一点: