0

我在 Google Cloud Platform 中有一些虚拟机。

客观的

为属于同一子网的每个 VM 配置多个内部 IP 地址(静态)。然后,每个分配的 IP 都可以被安装在 VM 内的不同服务使用。

环境描述

  1. 1号VPC网络 | 名称: vpc-net-01
  2. 1 号子网(关联到 vpc-net-01)| 名称: vpc-net-01-sub-01。IP等级: 172.31.6.0/24
  3. 3 号虚拟机(Linux 操作系统)

基本上我已经知道如何为每个 VM 创建和分配静态 IP 地址(链接:保留静态内部 IP 地址)。

问题

例如,如何为每个 VM 分配 5 个额外的 IP 地址?我不能为每个 VM 使用多个 NIC,因为我只有一个 VPC 网络,并且无法将多个网络接口连接到同一个 VPC 网络。

我必须使用别名 IP 范围吗?但他们使用“容器”概念。因此,例如,对于每个 VM,我将主要 CIDR 配置为“子网范围”,并将这些配置为“别名 IP 范围”:

  1. VM01 - 172.31.6.8/29
  2. VM02 - 172.31.6.16/29
  3. VM03 - 172.31.6.24/29

那么,我该怎么办?从我是否必须通过添加属于与该 VM 关联的别名 IP 范围的静态 IP 地址来配置每个 VM(我的意思是操作系统)?

还是我应该使用另一种方法?示例:为VM启用IP转发,创建静态网络路由,添加适当的防火墙规则,并为Windows的网络适配器设置额外的内部IP地址(链接:使用路由设置静态目标内部IP地址)?

谢谢你。卢卡

4

2 回答 2

1

我认为有不同的方法可以完成你想要做的事情,我将告诉你我将如何设置它,这并不意味着它肯定是最好的解决方案。

老实说,我不喜欢在同一台机器上使用多个公共 IP,如果我不需要的话,我也不喜欢弄乱实例的网络配置,因为它真的很容易出错,而且故障排除很麻烦。

由于您使用的是 Google Cloud Platform,我认为最简单的方法是让一个实例仅具有一个私有 IP,在具有不同前端的不同端口上提供不同的服务(Google Cloud LoadBalancer HTTP(s)、TCP、UDP、ecc)每个都有不同的公共 IP。

在这里,您可以找到引导您实施的分步指南。

我知道您的问题实际上是“我如何在同一个实例上拥有多个公共 IP”,我的回答是“您不需要它们,因此设置不同的配置更容易”。

于 2018-01-21T09:50:51.427 回答
0

是的,您应该使用别名 IP 范围。
这些将透明地映射到您的计算系统,而无需将它们作为静态 IP 添加到系统本身中。当然,如果您想在具有特定 IP 的同一系统上运行不同的服务(例如多个网站在同一端口上但在不同的 IP 上),那么您需要将提示添加到系统中。在 Windows 机器上,您需要跳过 DHCP 并手动输入 IP,然后在 nic 设置中添加其他的。
不是那么干净的设置,但可以在“静态”环境中管理。

于 2019-09-05T13:19:06.827 回答