Amazon web services 无法访问不同VPC中的其他实例

Amazon web services 无法访问不同VPC中的其他实例,amazon-web-services,amazon-vpc,subnet,private-subnet,Amazon Web Services,Amazon Vpc,Subnet,Private Subnet,因此,我在同一个帐户中有两个不同的VPC 在第一个VPC(A)中,我有一个实例,它是私有子网的一部分,所有数据都路由到NAT网关(使用以前的配置) 目前,我正在尝试从该实例访问另一个VPC(B)中的一个实例(telnet/ping/anywhere) 我设置了VPC对等,并将两个VPC的主路由表更改为以对等连接为目标。(不起作用) 然后我尝试更改私有子网的路由表,以直接路由到对等连接。(不起作用) 有很多安全组在起作用,但是当我在B中更改实例上的SG以接受所有连接时,我可以从本地PC连接,但仍然

因此,我在同一个帐户中有两个不同的VPC

在第一个VPC(A)中,我有一个实例,它是私有子网的一部分,所有数据都路由到NAT网关(使用以前的配置)

目前,我正在尝试从该实例访问另一个VPC(B)中的一个实例(telnet/ping/anywhere)

我设置了VPC对等,并将两个VPC的主路由表更改为以对等连接为目标。(不起作用)

然后我尝试更改私有子网的路由表,以直接路由到对等连接。(不起作用)

有很多安全组在起作用,但是当我在B中更改实例上的SG以接受所有连接时,我可以从本地PC连接,但仍然不能从A中的实例连接。因此,我认为SG不是问题。我以为可能是路由表,但找不到原因

当我从A中的实例跟踪路由时,它会进入NAT网关专用IP,然后进入某个AWS实例(由AWS拥有,而不是我),然后丢失


连接哪里可能出错?

根据您所描述的情况,很难调试这种情况

因此,相反,我试图重现你的情况,并记录了我采取的所有步骤。请按照以下步骤再创建两个VPC,以便您对它实际可以工作感到满意

然后,一旦它正常工作,您可以将此配置与现有配置进行比较,以找出当前VPC配置可能存在的问题

这就是我所做的。跟我来

  • 使用VPC向导创建VPC-A(“具有单个公用子网的VPC”),CIDR为
    10.0.0.0/16
    ,公用子网为
    10.0.0/24
  • 手动创建的VPC-B,CIDR为
    10.5.0.0/16
    ,私有子网
    10.5.0.0/24
  • 在VPC-A中启动了EC2实例-A(可公开访问,安全组允许从
    0.0.0.0/0
    进行SSH访问)
  • 在VPC-B中启动了EC2实例-B(在私有子网中,安全组允许从
    0.0.0/0
    进行SSH访问)
  • 创建了从VPC-a到VPC-B的VPC对等连接
  • 接受对等连接
  • 在VPC-a的主路由表中添加了一条路由,目的地为
    10.5.0.0/16
    (VPC-B的范围),指向对等连接
  • 在VPC-B的主路由表中添加了一条路由,目的地为
    10.0.0.0/16
    (VPC-a的范围),指向对等连接
  • 通过SSH登录到实例A
  • 从实例A,通过SSH连接到实例B的私有IP地址
我必须首先将私钥粘贴到实例a上的PEM文件中,使用
chmod
设置权限,然后使用:

ssh -i keypair.pem ec2-user@10.5.0.15
我使用了实例B的私有IP地址(
10.5.0.15
)。这是随机分配的,所以当你自己尝试这一点时会略有不同

结果是我通过SSH成功地通过对等连接从VPC-A中的实例A连接到VPC-B中的实例B(我通过专用IP地址连接以及VPC-B没有Internet网关的事实证明了这一点)


因此,如果您按照上述步骤进行操作并使其正常工作,那么您将能够比较现有设置并找出不同之处

非常感谢。问题是我更改了主路由表,但我应该更改子网自己的路由表。这个解释有助于调试!