单个GCE实例上的多个IP

时间:2019-08-02 01:44:43

标签: google-cloud-platform google-compute-engine vpc

我想拥有一个具有多个内部IP的VM,每个IP与单个网络接口上的外部IP地址一一对应。 我需要能够从该VM(单个进程)发起请求,但需要不同的请求使用不同的外部IP。

例如

10.146.0.3 <> 35.215.6.3
10.146.0.4 <> 35.215.6.6
10.146.0.5 <> 35.215.6.8

我设法使用alias IP ranges向单个接口添加了多个IP,但是找不到将这些额外的内部IP映射到外部IP的方法。 如图here所示,这很容易在AWS上完成(花了我大约5-10分钟),但经过两整天的浏览,我仍然找不到在GCP上执行此操作的方法。

正在寻找负载平衡功能或任何与功能相关的入站连接(我的VM充当HTTP客户端,而不是服务器,因此我只关心出站连接)。另外,如果可能的话,我也要避免使用多个网络接口,因为每个vCPU的网络接口数量受1个限制,因此无法在成本上合理扩展(加上必须创建新的VPC的所有麻烦)。

相关问题(不能完全解决我的问题):

为了进行测试,我使用以下命令:

curl -w '\n%{local_ip}\n' --interface <internal_ip> ifconfig.co

哪个返回外部IP,然后返回内部IP:

52.196.168.76 
172.31.24.253

1 个答案:

答案 0 :(得分:0)

可以将多个外部静态IP地址添加到VM实例。每个VM实例最多可以具有八个网络接口,并且可以为添加的接口分配静态外部IP。 但是,不可能将一个以上的同一NIC添加到同一VM实例,并且每个添加的NIC子网IP范围都不能重叠。每个内部IP范围都必须不同1

您可能会考虑将VM设备2与多个外部IP地址一起使用,这对于按计划进行流量分离很有用。