如何从AWS EC2实例ping我的本地计算机?

时间:2016-04-27 10:08:54

标签: sockets amazon-web-services amazon-ec2

我在AWS EC2上启动了一个ubuntu实例

e.g. [ec2-user@ip-XXX-XX-XX-XX ~]$

在这个实例中,我正在运行一个套接字程序,用于将数据发送到我的本地系统。 程序运行正常,但无法连接到我的本地IP。

我正在尝试从AWS ec2用户ping我的本地系统,但它也无效。但我可以ping google(8.8.8.8)

e.g. [ec2-user@ip-xxx-xx-xx-xx ~]$ ping xxx.xxx.xx.xx(my local IP)

我已设置所有安全组(入站),如All Trafic,All TCP等。

抱歉英语不好。

谢谢

1 个答案:

答案 0 :(得分:1)

无法从AWS托管计算机上ping您的计算机(PC)

这可能是因为您计算机上的VM正在使用NAT出站与LAN通信,而LAN则转发到Internet路由器,后者将数据包发送到AWS 反向路由(入站到您的PC)不存在,因此从AWS计算机启动ping echo请求将无法正常工作

可以通过在路由器上打开一个通道来解决这个问题但通常这不是一个好主意

但是,如果你想安全地建立一个套接字连接,有一种方法

首先,启动带远程端口转发的ssh会话。在Linux ssh客户端中,这是使用-R选项。

例如,如果您的本地系统在端口80上运行侦听服务,而您的远程系统的地址为54.10.10.10,那么

ssh -R 8080:localhost:80 ec2-user@54.10.10.10

将建立一个电路,以便连接到" localhost"在端口8080上的远程ec2服务器上连接到" localhost"在本地计算机的端口80上

如果您没有使用ssh cli程序,大多数ssh客户端都有这种设施。

请注意,必须保持ssh会话处于打开状态才能使用连接