EC2 用例上的多个 ENI

Ash*_*csi 0 amazon-ec2 amazon-web-services elastic-network-interface

我在自定义 VPC 中创建了 2 个私有子网 PRIVATEA 和 PRIVATEB。这些子网位于不同的可用区。在 PRIVATEA 中添加了 EC2 实例。该实例已附加 ENI eth0。接下来,我在另一个 PRIVATEB 子网中创建了一个 ENI,并将其附加到 PRIVATEB 子网中的 EC2 实例。设置成功。基本上我按照博客教程进行了此设置。它表示辅助接口将允许另一个组(即管理组)的流量。

但我无法将任何用例与它联系起来。谁能解释一下我们什么时候使用这样的设置?这是在本论坛中提出的正确问题吗?

谢谢

Joh*_*ein 5

弹性网络接口 (ENI) 是一种虚拟网卡,用于将 Amazon EC2 实例连接到 Amazon VPC 中的子网。事实上,Amazon RDS 数据库、AWS Lambda 函数、Amazon Redshift 数据库以及连接到 VPC 的任何其他资源也使用 ENI。

额外的 ENI 可以附加到 Amazon EC2 实例。这些额外的 ENI 可以附加到同一可用区中的不同子网。然后,操作系统可以将流量路由到不同的 ENI。

安全组实际上与 ENI(而不是实例)关联。因此,不同的 ENI 对于进出实例的流量可以有不同的规则。

使用多个 ENI 的一个示例是创建DMZ,它充当流量必须通过的边界。例如:

Internet --> DMZ --> App Server
Run Code Online (Sandbox Code Playgroud)

在这种情况下,所有流量都必须经过 DMZ,通常在将流量传递到服务器之前先对 DMZ 进行检查。这可以通过使用多个 ENI 来实现,其中一个 ENI 连接到公共子网以接收流量,另一个 ENI 连接到私有子网以发送流量。子网上的网络 ACL 可以配置为禁止在子网之间传递流量,以便流量从公共子网流向私有子网的唯一方式是通过 DMZ 实例,因为它连接到两个子网。

另一个用例是将许可证附加到 MAC 地址的软件。一些软件产品这样做是因为 MAC 地址在所有网络设备中都是唯一的(尽管有些设备允许更改它)。因此,他们在附加到辅助 ENI 的 MAC 地址下注册其软件。如果需要更换该实例,可以将辅助 ENI 移至另一个实例,而无需更改 MAC 地址。