如何使用内部IP在同一VPC但不同子网(区域)内通信2个实例



我有两个实例,一个VPC和两个子网,每个子网位于不同的区域。

一个实例有一个公共IP,另一个实例只有内部IP。我希望这两个实例使用它们的内部IP相互通信。

我怎样才能做到这一点?

-编辑

实例

名称:实例-a

区域:us-central1-a

网络:测试

网络标签:测试允许内部测试允许ssh

内部ip:10.10.0.2

外部ip:none


名称:instance-b

区域:北美-东北部1-a

网络:测试

网络标签:测试允许内部测试允许ssh

内部ip:10.20.0.2

外部ip:是


vpc

名称:测试

动态路由模式:全局


子网

名称:测试

地区:美国中央1

IP地址范围:10.10.0.0/15

网关:10.10.0.1

私人谷歌访问:在上


名称:测试

地区:北美-东北1

IP地址范围:10.20.0.0/15

网关:10.20.0.1

私人谷歌访问:在上


防火墙规则

名称:测试允许内部

类型:入口

目标:应用于所有

过滤器:IP范围:0.0.0.0/0

协议/端口:所有

操作:允许

优先级:65534

网络:测试


名称:测试ssh

类型:入口

目标:应用于所有

过滤器:IP范围:0.0.0.0/0

协议/端口:tcp:22

操作:允许

优先级:65534

网络:测试

现在,我正在努力实现:通过ssh-usinf外部IP从本地连接到instance-b。我只想让instance-b通过ssh使用内部IP ie:ssh连接到instance-auser@instance-b-external-ip>gt;sshuser@instance-a-internal-ip

我可以ping,但当我尝试通过ssh使用内部ip从instance-b连接到instance-a时,它总是说权限被拒绝。


新建编辑SSH

我使用外部ip ie:ssh连接到instance-buser@externalip.在instance-b中,我使用以下命令创建ssh密钥

ssh-keygen -t rsa -b 4096 -f ~/.ssh/instance_b

公钥和私钥

公钥:instance_b.pub

私钥:instance_b

我使用GUI 将公钥添加到SSH KEYS

然后我像往常一样连接sshuser@10.10.0.2

The authenticity of host '10.10.0.2 (10.10.0.2)' can't be established.
ECDSA key fingerprint is SHA256:iA1FfVyXM1234OsIy424ElVLnjGg2tMuSmdbsGWGLSs.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '10.10.0.2' (ECDSA) to the list of known hosts.
user@10.10.0.2: Permission denied (publickey).

我得到拒绝的权限

但是如果我使用以下命令:

ssh -i ~/.ssh/instance-b user@10.10.0.2

我可以连接。为什么?


如果我遗漏了什么,请告诉我

谢谢!

同一VPC内的VPC子网可以相互通信。VPC防火墙规则默认允许内部允许同一VPC内资源之间的所有TCP、UDP和ICMP流量。

关键是要使用内部(专用(IP地址。

最新更新