AWS의 인터넷 게이트웨이에 대해 혼란스럽습니다. VPC가 인터넷에 액세스하려면 IGW가 필요하고 EIP를 사용하여 EC2 인스턴스를 생성하면 자동으로 인터넷에 액세스할 수 있게 되는 이유는 무엇입니까?
그러면 제가 대답할 수 없는 질문이 있습니다.
그러면 AWS에서 EC2 인스턴스(기본 VPC에 생성됨)를 생성하고 탄력적 IP를 할당할 때 AWS 설명서에 VPC가 인터넷에 액세스할 수 있도록 명시되어 있으면 자동으로 인터넷에 액세스할 수 있는 이유는 무엇입니까? 인터넷 게이트웨이가 필요합니까?
답변1
VPC가 인터넷과 통신하려면 인터넷 게이트웨이(IGW)가 필요합니다. 가상 프라이빗 게이트웨이(VPN 엔드포인트)를 사용하면 VPN을 통해 회사 네트워크와 같은 다른 네트워크와 통신할 수 있으며, 이는 잠재적으로 인터넷 연결을 제공할 수 있습니다. VPC 엔드포인트와 PrivateLink는 일반적으로 인터넷을 통해 연결되는 S3에 대한 프라이빗 연결과 같은 기타 제한된 연결을 제공합니다.
인터넷 게이트웨이 없이도 공용 IP 주소가 자동 할당되도록 할 수 있습니다. VPC에 인터넷 게이트웨이가 없을 때 인스턴스에 탄력적 IP를 할당하려고 하면 할당할 수 없습니다. 오류 메시지는 다음과 같습니다.
네트워크 vpc-05054501693f2f5fb가 인터넷 게이트웨이에 연결되어 있지 않습니다.
EIP가 있는 인스턴스가 있는 VPC에서 인터넷 게이트웨이를 분리하려고 하면 이 오류 메시지가 표시됩니다.
나는 이 모든 것을 두 배로 확실하게 테스트했습니다. VPC를 생성하고 약간의 작업을 수행하는 데 10분밖에 걸리지 않았습니다. 이것이 클라우드/AWS의 가장 큰 장점입니다. 일반적으로 시도해 봄으로써 쉽게 문제를 해결할 수 있습니다. 아마 0.05달러 정도 들었을 거예요.
답변2
VPC 내부 인스턴스에서 직접 인터넷에 액세스하려면 다음이 필요합니다.
- VPC에 연결된 인터넷 게이트웨이(IGW)
- IGW를 통한 기본 경로(0.0.0.0/0)가 있는 라우팅 테이블이 있는 서브넷('퍼블릭 서브넷'이라고도 함)
- 인스턴스에 연결된 공용 IP 또는 탄력적 IP(인터넷에 액세스하기 위해 탄력적 IP가 필요하지 않으며 인스턴스에 동적 비탄력적 IP가 있을 수 있음)
- 아웃바운드 트래픽을 허용하는 인스턴스에 연결된 보안 그룹(기본적으로 수행됨)
- 트래픽을 허용하는 서브넷과 연결된 네트워크 ACL(기본적으로 수행됨)
이 5가지 사항은 퍼블릭 서브넷의 인스턴스에 대한 직접 인터넷 연결에 문제가 있는 경우 실행해 볼 수 있는 좋은 체크리스트입니다.
귀하의 질문에서 '기본 VPC'에 대한 배포를 언급하셨습니다. 기본 VPC에는 이미 적절한 라우팅 테이블이 설정된 인터넷 게이트웨이와 서브넷이 있으므로 이를 구성할 필요가 없었습니다.
IGW를 통한 기본 경로가 없는 서브넷인 '개인 서브넷'에서 간접적으로 인터넷에 액세스할 수도 있습니다. 이를 수행하는 방법은 여러 가지가 있지만 일반적인 방법 중 하나는 NAT 게이트웨이 서비스를 별도의 공용 서브넷(즉, IGW를 통한 기본 경로가 있는 경로 테이블이 있는 서브넷)에 배포한 다음 새 경로 테이블을 정의하는 것입니다. NAT 게이트웨이를 통해 기본 경로(0.0.0.0/0)를 사용하는 프라이빗 서브넷. 이렇게 하면 직접 인터넷이 아닌 NAT 게이트웨이를 통해 인터넷에 대한 아웃바운드 액세스가 가능해집니다. 프라이빗 서브넷의 인스턴스에는 해당 시점에 퍼블릭 또는 탄력적 IP가 전혀 없습니다.
자세한 내용은 여기에서 확인할 수 있습니다.인터넷 게이트웨이
그리고 여기:NAT 게이트웨이