Why do we need a NAT Gateway?
A NAT (Network Address Translation) gateway is a managed cloud service that allows resources in a private subnet to connect to the public internet or external networks while blocking unsolicited inbound connections from the outside.