인터넷 게이트웨이를 사용하여 인터넷에 연결 - Amazon Virtual Private Cloud

인터넷 게이트웨이를 사용하여 인터넷에 연결

인터넷 게이트웨이는 수평 확장되고 가용성이 높은 중복 VPC 구성 요소로, VPC와 인터넷 간에 통신할 수 있게 해줍니다. IPv4 트래픽 및 IPv6 트래픽을 지원합니다. 네트워크 트래픽에 가용성 위험이나 대역폭 제약이 발생하지 않습니다.

리소스에 퍼블릭 IPv4 주소 또는 IPv6 주소가 있는 경우 인터넷 게이트웨이를 사용하면 퍼블릭 서브넷(예: EC2 인스턴스)의 리소스가 인터넷에 연결할 수 있습니다. 마찬가지로 인터넷의 리소스는 퍼블릭 IPv4 주소 또는 IPv6 주소를 사용하여 서브넷의 리소스에 대한 연결을 시작할 수 있습니다. 예를 들어 인터넷 게이트웨이를 사용하면 로컬 컴퓨터로 AWS의 EC2 인스턴스에 연결할 수 있습니다.

인터넷 게이트웨이는 VPC 라우팅 테이블에서 인터넷 라우팅 가능 트래픽에 대한 대상을 제공합니다. IPv4 통신의 경우 인터넷 게이트웨이는 Network Address Translation(NAT)도 수행합니다. IPv6를 사용하는 통신의 경우 IPv6 주소가 퍼블릭이므로 NAT가 필요하지 않습니다. 자세한 내용은 IP 주소 및 NAT를 참조하세요.

인터넷 액세스 활성화

인터넷 게이트웨이를 사용하여 VPC의 서브넷에 속한 인스턴스에 대해 인터넷 송수신 액세스를 활성화하려면 다음을 수행해야 합니다.

  • 인터넷 게이트웨이를 생성하여 VPC에 연결합니다.

  • 인터넷 바인딩된 트래픽을 인터넷 게이트웨이로 전달하는 라우팅을 서브넷의 라우팅 테이블에 추가합니다.

  • 서브넷의 인스턴스에 퍼블릭 IPv4 주소나 IPv6 주소가 있는지 확인합니다.

  • 네트워크 액세스 제어 목록 및 보안 그룹 규칙에서 원하는 인터넷 트래픽이 인스턴스로, 그리고 인스턴스에서 흐르도록 허용되는지 확인합니다.

퍼블릭 및 프라이빗 서브넷

서브넷이 인터넷 게이트웨이로 향하는 라우팅이 있는 라우팅 테이블과 연결되는 경우, 이를 퍼블릭 서브넷이라고 합니다. 서브넷이 인터넷 게이트웨이로 향하는 라우팅이 없는 라우팅 테이블과 연결되는 경우 이를 프라이빗 서브넷이라고 합니다.

퍼블릭 서브넷의 라우팅 테이블에서 라우팅 테이블에 명시적으로 알려지지 않은 모든 대상에 대한 인터넷 게이트웨이의 라우팅을 지정할 수 있습니다(IPv4의 경우 0.0.0.0/0 또는 IPv6의 경우 ::/0). 또는 라우팅을 더 좁은 범위의 IP 주소(예: AWS 외부에 있는 회사 퍼블릭 엔드포인트의 퍼블릭 IPv4 주소 또는 VPC 외부에 있는 다른 Amazon EC2 인스턴스의 탄력적 IP 주소)로 지정할 수 있습니다.

IP 주소 및 NAT

IPv4 인터넷 통신이 가능하게 하려면, 인스턴스에 퍼블릭 IPv4 주소가 있어야 합니다. 인스턴스에 퍼블릭 IPv4 주소를 자동 할당하도록 인스턴스에 탄력적 IP 주소를 할당하도록 VPC를 구성할 수 있습니다. 사용자의 인스턴스는 VPC 및 서브넷 내부에서 정의된 프라이빗(내부) IP 주소 공간만 인식합니다. 인터넷 게이트웨이는 사용자의 인스턴스를 대신하여 논리적으로 일대일 NAT를 제공하므로, 트래픽이 VPC 서브넷을 떠나 인터넷으로 이동할 때 회신 주소 필드는 프라이빗 IP 주소가 아니라, 인스턴스의 퍼블릭 IPv4 주소 또는 탄력적 IP 주소(EIP)로 설정됩니다. 반대로, 인스턴스의 퍼블릭 IPv4 주소 또는 탄력적 IP 주소를 대상 주소로 하는 트래픽에는 트래픽이 VPC로 전달되기 전에 인스턴스의 프라이빗 IPv4 주소로 변환되는 대상 주소가 있습니다.

IPv6를 위해 인터넷을 통한 통신을 가능케 하려면, VPC 및 서브넷에 연결된 IPv6 CIDR 블록이 있어야 하고, 서브넷의 범위에 속한 IPv6 주소가 인스턴스에 할당되어야 합니다. IPv6 주소는 전역적으로 고유하므로 퍼블릭으로 기본 설정되어 있습니다.

다음 다이어그램에서 가용 영역 A의 서브넷은 퍼블릭 서브넷입니다. 이 서브넷의 라우팅 테이블에는 인터넷 바운드 IPv4 트래픽을 인터넷 게이트웨이로 전송하는 경로가 있습니다. 퍼블릭 서브넷의 인스턴스에는 퍼블릭 IP 주소 또는 탄력적 IP 주소가 있어서 인터넷 게이트웨이를 통해 인터넷과의 통신을 지원할 수 있어야 합니다. 비교해 보면 가용 영역 B의 서브넷은 라우팅 테이블에 인터넷 게이트웨이에 대한 경로가 없기 때문에 프라이빗 서브넷에 해당합니다. 프라이빗 서브넷의 인스턴스는 퍼블릭 IP 주소가 있더라도 인터넷 게이트웨이를 통해 인터넷과 통신할 수 없습니다.


                인터넷 게이트웨이 사용

인스턴스에 퍼블릭 IP 주소를 할당하지 않고 인터넷에 액세스할 수 있도록 하려면 대신 NAT 디바이스를 사용하면 됩니다. NAT 디바이스를 사용하면 프라이빗 서브넷의 인스턴스를 인터넷에 연결하는 한편, 인터넷의 호스트가 해당 인스턴스와의 연결을 시작하지 못하도록 할 수 있습니다. 자세한 내용은 NAT 디바이스를 사용하여 인터넷 또는 다른 네트워크에 연결 단원을 참조하십시오.

기본 VPC와 기본이 아닌 VPC에 대한 인터넷 액세스

다음 테이블에서 VPC가 IPv4 또는 IPv6를 통한 인터넷 액세스에 필요한 구성 요소와 함께 자동으로 제공되는지를 개괄적으로 제시합니다.

구성 요소 기본 VPC 기본이 아닌 VPC
인터넷 게이트웨이 아니요
IPv4 트래픽을 위한 인터넷 게이트웨이로 가는 경로가 있는 라우팅 테이블(0.0.0.0/0) 아니요
IPv6 트래픽을 위한 인터넷 게이트웨이로 가는 경로가 있는 라우팅 테이블(::/0) 아니요 아니요
서브넷에서 시작된 인스턴스에 자동 할당된 퍼블릭 IPv4 주소 예(기본 서브넷) 아니요(기본이 아닌 서브넷)
서브넷에서 시작된 인스턴스에 자동 할당된 IPv6 주소 아니요(기본 서브넷) 아니요(기본이 아닌 서브넷)

기본 VPC에 대한 자세한 내용은 기본 VPC 단원을 참조하십시오. VPC 생성에 대한 자세한 내용은 VPC 생성 단원을 참조하십시오.

VPC에서 IP 주소를 지정하고 인스턴스에 퍼블릭 IPv4 또는 IPv6 주소를 할당하는 방식을 제어하는 방법에 대한 자세한 내용은 VPC 및 서브넷의 IP 주소 지정 단원을 참조하십시오.

VPC에 새 서브넷을 추가할 때 해당 서브넷의 라우팅 및 보안 설정을 구성해야 합니다.

VPC의 서브넷에서 인터넷에 액세스

다음은 인터넷 게이트웨이를 사용하여 VPC의 서브넷에서 인터넷 액세스를 지원하는 방법을 설명합니다. 인터넷 액세스를 제거하려면 VPC에서 인터넷 게이트웨이를 분리한 후 삭제할 수 있습니다.

서브넷 생성

VPC에 서브넷을 추가하려면
  1. https://console.aws.amazon.com/vpc/에서 Amazon VPC 콘솔을 엽니다.

  2. 탐색 창에서 Subnets(서브넷), Create subnet(서브넷 생성)를 선택합니다.

  3. 필요에 따라 서브넷 세부 정보를 지정합니다.

    • Name tag: 서브넷의 이름을 입력할 수 있는 옵션. Name 키와 지정한 값으로 태그가 생성됩니다.

    • VPC: 서브넷을 만들고자 하는 VPC를 선택합니다.

    • 가용 영역: 서브넷이 상주하게 될 가용 영역 또는 로컬 영역을 선택하거나 기본 설정된 [기본 설정 없음(No Preference)]을 그대로 두어 AWS가 가용 영역을 자동 선택하도록 합니다.

      Local Zones을 지원하는 리전에 대한 자세한 내용은 Linux 인스턴스용 Amazon EC2 사용 설명서의 사용 가능한 리전을 참조하세요.

    • IPv4 CIDR 블록: 서브넷에 IPv4 CIDR 블록을 지정합니다(예: 10.0.1.0/24). 자세한 내용은 IPv4 VPC CIDR 블록 섹션을 참조하세요.

    • IPv6 CIDR 블록: (선택 사항) IPv6 CIDR 블록을 VPC에 연결한 경우, Specify a custom IPv6 CIDR을 선택합니다. 서브넷에 16진수 페어 값을 지정하거나 기본값을 그대로 둡니다.

  4. 생성을 선택합니다.

자세한 내용은 VPC의 서브넷 섹션을 참조하세요.

인터넷 게이트웨이 생성 및 연결

인터넷 게이트웨이를 생성한 후 VPC에 연결합니다.

인터넷 게이트웨이를 생성하여 VPC에 연결
  1. https://console.aws.amazon.com/vpc/에서 Amazon VPC 콘솔을 엽니다.

  2. 탐색 창에서 인터넷 게이트웨이(Internet gateways)를 선택한 후 인터넷 게이트웨이 생성(Create internet gateway)을 선택합니다.

  3. 선택적으로 인터넷 게이트웨이의 이름을 지정합니다.

  4. 선택적으로 태그를 추가하거나 제거합니다.

    [태그 추가] 태그 추가를 선택하고 다음을 수행합니다.

    • 키(Key)에 키 이름을 입력합니다.

    • 에 키 값을 입력합니다.

    [태그 제거] 태그의 키와 값 오른쪽에 있는 제거를 선택합니다.

  5. 인터넷 게이트웨이 생성을 선택합니다.

  6. 방금 생성한 인터넷 게이트웨이를 선택한 후 Actions, Attach to VPC(작업, VPC에 연결)을 선택합니다.

  7. 목록에서 VPC를 선택한 다음 인터넷 게이트웨이 연결을 선택합니다.

사용자 지정 라우팅 테이블 생성

서브넷을 생성하면 생성된 서브넷이 VPC의 기본 라우팅 테이블과 자동으로 연결됩니다. 기본적으로, 기본 라우팅 테이블에는 인터넷 게이트웨이에 대한 경로가 포함되지 않습니다. 다음 절차에서는 VPC 외부 위치를 대상 주소로 하는 트래픽을 인터넷 게이트웨이로 보내는 경로를 포함한 사용자 지정 라우팅 테이블을 생성한 다음, 이를 서브넷과 연결합니다.

사용자 지정 라우팅 테이블을 생성하려면
  1. https://console.aws.amazon.com/vpc/에서 Amazon VPC 콘솔을 엽니다.

  2. 탐색 창에서 [라우팅 테이블(Route Tables)]을 선택한 다음 [라우팅 테이블 생성(Create Route Table)]을 선택합니다.

  3. [라우팅 테이블 생성(Create Route Table)] 대화 상자에서 선택적으로 라우팅 테이블의 이름을 지정한 다음, VPC를 선택하고 [라우팅 테이블 생성(Create route table)]을 선택합니다.

  4. 방금 생성한 사용자 지정 라우팅 테이블을 선택합니다. 세부 정보 창에는 경로, 연결 및 경로 전파 작업을 위한 탭이 표시됩니다.

  5. [경로(Routes) 탭에서 [경로 편집(Edit routes)], [경로 추가(Add route)]를 선택한 후 필요한 경우 다음 경로를 추가합니다. 작업을 마쳤으면 [변경 사항 저장(Save changes)]을 선택합니다.

    • IPv4 트래픽에 대해 대상 주소 상자에서 0.0.0.0/0을 지정하고, 대상 목록에서 인터넷 게이트웨이 ID를 선택합니다.

    • IPv6 트래픽에 대해 대상 주소 상자에서 ::/0을 지정하고, 대상 목록에서 인터넷 게이트웨이 ID를 선택합니다.

  6. [서브넷 연결(Subnet Associations)] 탭에서 [서브넷 연결 편집(Edit subnet associations)]을 선택하고, 해당 서브넷 확인란을 선택한 후 [연결 저장(Save associations)]을 선택합니다.

자세한 내용은 라우팅 테이블 구성 단원을 참조하십시오.

인터넷 액세스를 위한 보안 그룹 생성

기본적으로 VPC 보안 그룹은 모든 아웃바운드 트래픽을 허용합니다. 새 보안 그룹을 생성하고 인터넷에서 오는 인바운드 트래픽을 허용하는 규칙을 추가할 수 있습니다. 그런 다음 보안 그룹을 퍼블릭 서브넷의 인스턴스와 연결할 수 있습니다.

보안 그룹을 생성하여 인스턴스와 연결하려면
  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 탐색 창에서 보안 그룹(Security Groups)을 선택한 다음, 보안 그룹 생성(Create security group)을 선택합니다.

  3. 보안 그룹의 이름과 설명을 입력합니다.

  4. VPC에서 해당 VPC를 선택합니다.

  5. 인바운드 규칙(Inbound Rules)에서 규칙 추가(Add Rule)를 선택하고 필수 정보를 빠짐없이 제공합니다. 예를 들어 유형(Type)에서 HTTP 또는 HTTPS를 선택하고, 소스(Source)를 IPv4 트래픽의 경우 0.0.0.0/0으로, IPv6 트래픽의 경우 ::/0으로 입력합니다.

  6. 보안 그룹 생성을 선택합니다.

  7. 탐색 창에서 인스턴스(Instances)를 선택합니다.

  8. 인스턴스를 선택한 다음 작업(Actions), 보안(Security), 보안 그룹 변경(Change security groups)을 선택합니다.

  9. 연결된 보안 그룹(Associated security groups)에서는 목록에서 기존 보안 그룹을 선택한 다음 보안 그룹 추가(Add security group)를 선택합니다. 이미 연결된 보안 그룹을 제거하려면 제거(Remove)를 선택합니다. 변경 작업을 마쳤으면 저장(Save)을 선택합니다.

자세한 내용은 보안 그룹 섹션을 참조하세요.

인스턴스에 탄력적 IP 주소 할당

인스턴스를 서브넷으로 시작한 후, IPv4를 통해 인터넷에서 접속할 수 있도록 하려면 인스턴스에 탄력적 IP 주소를 할당해야 합니다.

참고

시작 중에 퍼블릭 IPv4 주소를 인스턴스에 할당한 경우에는 인터넷에서 인스턴스에 연결할 수 있으므로, 인스턴스에 탄력적 IP 주소를 할당할 필요가 없습니다. 인스턴스에 대한 IP 주소 지정에 관한 자세한 내용은 VPC 및 서브넷의 IP 주소 지정 단원을 참조하십시오.

콘솔을 사용하여 인스턴스에 엘라스틱 IP 주소를 할당하고 지정하려면
  1. https://console.aws.amazon.com/vpc/에서 Amazon VPC 콘솔을 엽니다.

  2. 탐색 창에서 [Elastic IPs]를 선택합니다.

  3. Allocate new address를 선택합니다.

  4. [Allocate]를 선택합니다.

  5. 목록에서 탄력적 IP 주소와 [Actions], [Associate Address]를 차례로 선택합니다.

  6. [Instance] 또는 [Network interface]를 선택한 다음 인스턴스 또는 네트워크 인터페이스 ID를 선택합니다. 탄력적 IP 주소를 연결할 프라이빗 IP 주소를 선택한 다음 [Associate]를 선택합니다.

자세한 내용은 탄력적 IP 주소를 VPC의 리소스와 연결 단원을 참조하십시오.

VPC에서 인터넷 게이트웨이 분리

VPC로 시작하는 인스턴스에 대해 더 이상 인터넷 액세스가 필요하지 않으면, VPC에서 인터넷 게이트웨이를 분리할 수 있습니다. VPC에 퍼블릭 IP 주소 또는 탄력적 IP 주소가 연결된 리소스가 있는 경우에는 인터넷 게이트웨이를 분리할 수 없습니다.

인터넷 게이트웨이 분리
  1. https://console.aws.amazon.com/vpc/에서 Amazon VPC 콘솔을 엽니다.

  2. 탐색 창에서 인터넷 게이트웨이(Internet gateways)를 선택합니다.

  3. 인터넷 게이트웨이를 선택하고 Actions, Detach from VPC(작업, VPC에서 분리)를 선택합니다.

  4. VPC에서 분리 대화 상자에서 인터넷 게이트웨이 분리를 선택합니다.

인터넷 게이트웨이 삭제

더 이상 필요하지 않게 된 인터넷 게이트웨이를 삭제할 수 있습니다. 아직 VPC에 연결되어 있는 인터넷 게이트웨이는 삭제할 수 없습니다.

인터넷 게이트웨이 삭제하려면
  1. https://console.aws.amazon.com/vpc/에서 Amazon VPC 콘솔을 엽니다.

  2. 탐색 창에서 인터넷 게이트웨이(Internet gateways)를 선택합니다.

  3. 인터넷 게이트웨이를 선택한 다음 작업, 인터넷 게이트웨이 삭제를 선택합니다.

  4. 인터넷 게이트웨이 삭제 대화 상자에서 delete를 입력하고 인터넷 게이트웨이 삭제를 선택합니다.

API 및 명령 개요

명령줄 또는 API를 사용하여 이 페이지에서 설명하는 작업을 수행할 수 있습니다. 명령줄 인터페이스 및 사용 가능한 API 작업 목록에 대한 자세한 내용은 Amazon VPC 작업 단원을 참조하십시오.

인터넷 게이트웨이 생성
VPC에 인터넷 게이트웨이 연결
인터넷 게이트웨이 설명
VPC에서 인터넷 게이트웨이 분리
인터넷 게이트웨이 삭제

요금

인터넷 게이트웨이에는 요금이 부과되지 않지만 인터넷 게이트웨이를 사용하는 EC2 인스턴스에는 데이터 전송 요금이 부과됩니다. 자세한 내용은 Amazon EC2 온디맨드 요금을 참조하세요.