gpt4 book ai didi

amazon-web-services - AWS VPC - 互联网网关与 NAT

转载 作者:行者123 更新时间:2023-12-03 04:11:14 31 4
gpt4 key购买 nike

什么是互联网网关?什么是 NAT 实例?他们提供什么服务?

阅读 AWS VPC 文档,我发现它们都将私有(private) IP 地址映射到可路由的 Internet 地址以用于传出请求,并将传入响应从 Internet 路由到子网上的请求者。

那么它们之间有什么区别呢?在什么情况下我可以使用 NAT 实例来代替(或除了)Internet 网关?它们本质上是运行某些网络应用程序的 EC2 实例,还是像路由器这样的特殊硬件?

您能否解释一下这些内容,并添加一些有关什么是公共(public)子网和私有(private)子网的背景知识,以便任何网络知识有限的初学者都可以轻松理解这些内容,而不是简单地指向 AWS 文档链接?另外,什么时候应该使用 NAT 网关而不是 NAT 实例?

附注我是 AWS VPC 的新手,因此我可能会在这里将苹果与橘子进行比较。

最佳答案

互联网网关

互联网网关是Amazon VPC 和互联网之间的逻辑连接。它不是物理设备。每个 VPC 只能关联一个。它限制互联网连接的带宽。 (带宽的唯一限制是 Amazon EC2 实例的大小,它适用于所有流量 - VPC 内部的流量和 Internet 上的流量。)

如果 VPC 没有 Internet 网关,则无法从 Internet 访问 VPC 中的资源(除非流量通过公司网络和 VPN 流动)/直接连接)。

如果子网具有将流量引导至 Internet 网关的路由表,则该子网将被视为公共(public)子网

NAT实例

NAT 实例是配置为将流量转发到 Internet 的 Amazon EC2 实例。它可以从现有 AMI 启动,也可以通过用户数据进行配置,如下所示:

#!/bin/sh
echo 1 > /proc/sys/net/ipv4/ip_forward
echo 0 > /proc/sys/net/ipv4/conf/eth0/send_redirects
/sbin/iptables -t nat -A POSTROUTING -o eth0 -s 0.0.0.0/0 -j MASQUERADE
/sbin/iptables-save > /etc/sysconfig/iptables
mkdir -p /etc/sysctl.d/
cat <<EOF > /etc/sysctl.d/nat.conf
net.ipv4.ip_forward = 1
net.ipv4.conf.eth0.send_redirects = 0
EOF

私有(private)子网中想要访问 Internet 的实例可以通过路由表配置将其 Internet 绑定(bind)流量转发到 NAT 实例。然后,NAT 实例将向 Internet 发出请求(因为它位于公共(public)子网中),并且响应将转发回私有(private)实例。

发送到 NAT 实例的流量通常会发送到与 NAT 实例本身不关联的 IP 地址(它将发送到 Internet 上的服务器)。因此,关闭 NAT 实例上的源/目标检查选项非常重要,否则流量将被阻止。

NAT 网关

AWS 推出了可以替代 NAT 实例的NAT 网关服务。使用 NAT 网关服务的好处是:

  • 它是一项完全托管的服务 - 只需创建它,它就会自动运行,包括故障转移
  • 最高可达 10 Gbps(NAT 实例仅限于与 EC2 实例类型关联的带宽)

但是:

  • 安全组不能与 NAT 网关关联
  • 每个可用区都需要一个,因为它们仅在一个可用区中运行

关于amazon-web-services - AWS VPC - 互联网网关与 NAT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38690012/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com