

# Amazon EC2 인스턴스 IP 주소 지정
<a name="using-instance-addressing"></a>

Amazon EC2와 Amazon VPC는 IPv4 및 IPv6 주소 지정 프로토콜을 모두 지원합니다. Amazon VPC는 IPv4 주소 지정 프로토콜을 사용하도록 기본 설정되어 있으며 이 동작은 비활성화할 수 없습니다. VPC를 생성할 때 VPC에 IPv4 CIDR 블록(프라이빗 IPv4 주소)를 지정해야 합니다. IPv6 CIDR 블록을 VPC에 할당하고 그 블록에 속한 IPv6 주소를 서브넷의 인스턴스에 할당할 수도 있습니다.

EC2 인스턴스를 시작할 때 VPC 및 서브넷을 지정할 수 있습니다. 인스턴스에는 서브넷 CIDR 범위 내의 프라이빗 IPv4 주소가 할당됩니다. 인스턴스를 퍼블릭 IPv4 주소 및 IPv6 주소로 선택적으로 구성할 수 있습니다. 서로 다른 VPC의 EC2 인스턴스가 퍼블릭 IP 주소를 사용하여 통신하는 경우 트래픽은 AWS 프라이빗 글로벌 네트워크에 유지되고 퍼블릭 인터넷을 통과하지 않습니다.

**Topics**
+ [프라이빗 IPv4 주소](#concepts-private-addresses)
+ [퍼블릭 IPv4 주소](#concepts-public-addresses)
+ [퍼블릭 IPv4 주소 최적화](#concepts-public-ip-address-opt)
+ [IPv6 주소](#ipv6-addressing)
+ [다중 IP 주소](#multiple-ip-addresses)
+ [EC2 인스턴스 호스트 이름](#amazon-dns)
+ [링크-로컬 주소](#link-local-addresses)
+ [EC2 인스턴스에 대한 IPv4 주소 관리](working-with-ip-addresses.md)
+ [EC2 인스턴스에 대한 IPv6 주소 관리](working-with-ipv6-addresses.md)
+ [EC2 인스턴스에 대한 보조 IP 주소](instance-secondary-ip-addresses.md)
+ [Windows 인스턴스의 보조 프라이빗 IPv4 주소 구성](config-windows-multiple-ip.md)

## 프라이빗 IPv4 주소
<a name="concepts-private-addresses"></a>

프라이빗 IPv4 주소는 인터넷을 통해 연결할 수 없는 IP 주소입니다. 프라이빗 IPv4 주소는 동일 VPC에서 인스턴스 간의 통신을 위해 사용될 수 있습니다. 프라이빗 IPv4 주소의 표준 및 사양에 대한 자세한 내용은 [RFC 1918](http://www.faqs.org/rfcs/rfc1918.html)을 참조하세요. DHCP를 사용하여 개인 IPv4 주소를 인스턴스에 할당합니다.

**참고**  
RFC 1918에 지정된 프라이빗 IPv4 주소 범위에 속하지 않는 공개적으로 라우팅 가능한 CIDR 블록을 사용하여 VPC를 생성할 수 있습니다. 하지만 이 설명서에서 프라이빗 IPv4 주소(또는 프라이빗 IP 주소)는 VPC의 IPv4 CIDR 범위 내에 있는 IP 주소를 말합니다.

VPC 서브넷은 다음 유형 중 하나일 수 있습니다.
+ IPv4 전용 서브넷 - 이러한 서브넷에는 IPv4 주소가 할당된 리소스만 생성할 수 있습니다.
+ IPv6 전용 서브넷 - 이러한 서브넷에는 IPv6 주소가 할당된 리소스만 생성할 수 있습니다.
+ IPv4 및 IPv6 서브넷 - 이러한 서브넷에는 IPv4 또는 IPv6 주소가 할당된 리소스만 생성할 수 있습니다.

EC2 인스턴스를 IPv4 전용 또는 이중 스택(IPv4 및 IPv6) 서브넷에서 시작할 경우, 인스턴스는 서브넷의 IPv4 주소 범위에서 기본 프라이빗 IP 주소를 수신합니다. 자세한 내용은 [Amazon VPC 사용 설명서](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-ip-addressing.html)의 *IP 주소 지정*을 참조하세요. 인스턴스 시작 시 사용자가 기본 프라이빗 IP 주소를 지정하지 않으면 사용자 서브넷 IPv4 범위 내의 IP 주소가 할당됩니다. 각 인스턴스는 기본 프라이빗 IPv4 주소가 할당된 기본 네트워크 인터페이스(index 0)를 갖습니다. 또한, 사용자는 *보조 프라이빗 IPv4 주소*라는 추가 프라이빗 IPv4 주소를 지정할 수 있습니다. 기본 프라이빗 IP 주소와 달리, 보조 프라이빗 IP 주소는 한 인스턴스에서 다른 인스턴스로 재할당될 수 있습니다. 자세한 내용은 [다중 IP 주소](#multiple-ip-addresses) 섹션을 참조하세요.

프라이빗 IPv4 주소는 기본 주소인지 보조 주소인지와 관계없이 인스턴스가 중지되었다가 시작될 때 또는 최대 절전 모드로 전환되었다가 시작될 때 네트워크 인터페이스와 연결이 유지되고 인스턴스가 종료되면 릴리스됩니다.

## 퍼블릭 IPv4 주소
<a name="concepts-public-addresses"></a>

퍼블릭 IP 주소는 인터넷을 통해 연결할 수 있는 IPv4 주소입니다. 퍼블릭 주소는 인스턴스와 인터넷의 상호 통신을 위해 사용될 수 있습니다.

기본 VPC에서 인스턴스를 시작할 때 기본적으로 퍼블릭 IP 주소가 할당됩니다. 기본 VPC가 아닌 VPC로 인스턴스를 시작하는 경우 서브넷은 이 서브넷으로 시작되는 인스턴스가 퍼블릭 IPv4 주소 풀로부터 퍼블릭 IP 주소를 부여받는지 여부를 결정하는 속성을 갖습니다. 기본적으로 기본 서브넷이 아닌 서브넷에서 시작된 인스턴스에 퍼블릭 IP 주소가 할당되지 않습니다.

다음과 같이 인스턴스가 퍼블릭 IP 주소를 수신할지 여부를 제어할 수 있습니다.
+ **서브넷의 퍼블릭 IP 주소 지정 속성을 수정합니다.** 자세한 내용은 *Amazon VPC 사용 설명서*의 [서브넷의 퍼블릭 IPv4 주소 지정 속성 수정](https://docs.aws.amazon.com/vpc/latest/userguide/subnet-public-ip.html)을 참조하세요.
+ **시작 시 퍼블릭 IP 주소 지정 기능을 활성화 또는 비활성화합니다.** 이는 서브넷의 퍼블릭 IP 주소 지정 속성을 재정의합니다. 자세한 내용은 [시작 시 퍼블릭 IPv4 주소 할당](working-with-ip-addresses.md#public-ip-addresses) 섹션을 참조하세요.
+ **시작 후 인스턴스에서 퍼블릭 IP 주소 할당을 취소합니다.** 자세한 내용은 [네트워크 인터페이스의 IP 주소 관리](managing-network-interface-ip-addresses.md) 섹션을 참조하세요.

퍼블릭 IP 주소는 Amazon의 퍼블릭 IPv4 주소 풀에서 사용자 인스턴스로 지정되고 AWS 계정과는 관련이 없습니다. 인스턴스와 퍼블릭 IP 주소의 연결이 해제되면 해당 퍼블릭 IP 주소는 퍼블릭 IPv4 주소 풀로 해제되지만 사용자가 해당 주소를 다시 사용할 수 없습니다.

다음과 같은 경우에 인스턴스에서 퍼블릭 IP 주소를 해제하거나 새 퍼블릭 IP 주소를 할당합니다.
+ 인스턴스가 중지되거나 최대 절전 모드로 전환되거나 종료되면 퍼블릭 IP 주소가 해제됩니다. 사용자가 중지되거나 최대 절전 모드로 전환된 인스턴스를 시작하면 새 퍼블릭 IP 주소가 할당됩니다.
+ 사용자가 탄력적 IP 주소를 인스턴스와 연결하면 퍼블릭 IP 주소가 해제됩니다. 사용자가 인스턴스에서 탄력적 IP 주소의 연결을 해제하면 새 퍼블릭 IP 주소가 할당됩니다.
+ 인스턴스의 퍼블릭 IP 주소가 해제되고 보조 네트워크 인터페이스가 있는 경우 새 퍼블릭 IP 주소가 할당되지 않습니다.
+ 인스턴스의 퍼블릭 IP 주소가 해제되고 탄력적 IP 주소와 연결된 보조 프라이빗 IP 주소가 있는 경우 새 퍼블릭 IP 주소가 할당되지 않습니다.

필요에 따라 인스턴스 간에 연결할 수 있는 영구 퍼블릭 IP 주소가 필요한 경우 탄력적 IP 주소를 대신하여 사용합니다.

동적 DNS를 사용하여 새 인스턴스의 퍼블릭 IP 주소에 기존 DNS 이름을 연결하는 경우 IP 주소가 인터넷을 통해 전해지는 데 24시간까지 걸릴 수 있습니다. 따라서 종료된 인스턴스가 요청을 계속 받는 동안 새 인스턴스가 트래픽을 받지 못할 수 있습니다. 이 문제를 해결하려면 탄력적 IP 주소를 사용합니다. 사용자는 고유 탄력적 IP 주소를 할당하고 인스턴스와 연결할 수 있습니다. 자세한 내용은 [탄력적 IP 주소](elastic-ip-addresses-eip.md) 섹션을 참조하세요.

Amazon VPC IP 주소 관리자(IPAM)를 사용하는 경우, AWS에서 퍼블릭 IPv4 주소의 연속 블록을 가져오고 AWS 리소스에 탄력적 IP 주소를 할당하는 데 사용할 수 있습니다. 연속적 IPv4 주소 블록을 사용하면 보안 액세스 제어 목록에 대한 관리 오버헤드를 크게 줄이고 AWS의 규모를 조정하는 기업의 IP 주소 할당 및 추적을 단순화할 수 있습니다. 자세한 내용은 **Amazon VPC IPAM 사용 설명서의 [IPAM 풀에서 순차적 탄력적 IP 주소 할당](https://docs.aws.amazon.com/vpc/latest/ipam/tutorials-eip-pool.html)을 참조하세요.

**고려 사항**
+ AWS에서는 탄력적 IP 주소 및 실행 중인 인스턴스에 연결된 퍼블릭 IPv4 주소를 포함하여 모든 퍼블릭 IPv4 주소에 요금을 부과합니다. 자세한 내용은 [Amazon VPC 요금 페이지](https://aws.amazon.com/vpc/pricing/)의 **퍼블릭 IPv4 주소** 탭을 참조하세요.
+ 인스턴스가 동일 리전에 존재하는지 여부에 따라 퍼블릭 NAT IP 주소를 통해 다른 인스턴스에 액세스하는 인스턴스에는 리전별 또는 인터넷 데이터 전송 비용이 청구됩니다.

## 퍼블릭 IPv4 주소 최적화
<a name="concepts-public-ip-address-opt"></a>

AWS에서는 탄력적 IP 주소 및 실행 중인 인스턴스에 연결된 퍼블릭 IPv4 주소를 포함하여 모든 퍼블릭 IPv4 주소에 요금을 부과합니다. 자세한 내용은 [Amazon VPC 요금 페이지](https://aws.amazon.com/vpc/pricing/)의 **퍼블릭 IPv4 주소** 탭을 참조하세요.

다음 목록에는 사용하는 퍼블릭 IPv4 주소 수를 최적화하기 위해 취할 수 있는 조치가 포함되어 있습니다.
+ [Elastic Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/load-balancer-getting-started.html)를 사용하여 EC2 인스턴스에 대한 트래픽을 로드 밸런싱하고 [인스턴스에 할당된 기본 ENI에서 **퍼블릭 IP 자동 할당**을 비활성화](managing-network-interface-ip-addresses.md)하세요. 로드 밸런서는 단일 퍼블릭 IPv4 주소를 사용하므로 퍼블릭 IPv4 주소 수가 줄어듭니다. 기존 로드 밸런서를 통합하여 퍼블릭 IPv4 주소 수를 더 줄일 수도 있습니다.
+ NAT 게이트웨이를 사용하는 유일한 이유가 유지 관리 또는 긴급 상황을 위해 프라이빗 서브넷의 EC2 인스턴스에 SSH로 연결하는 것이라면 [EC2 Instance Connect 엔드포인트](connect-using-eice.md)를 대신 사용하는 것이 좋습니다. EC2 Instance Connect 엔드포인트를 사용하면 인스턴스에 퍼블릭 IPv4 주소가 없어도 인터넷에서 인스턴스에 연결할 수 있습니다.
+ EC2 인스턴스가 퍼블릭 IP 주소가 할당된 퍼블릭 서브넷에 있는 경우 인스턴스를 프라이빗 서브넷으로 이동하고, 퍼블릭 IP 주소를 제거하고, [퍼블릭 NAT 게이트웨이](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html)를 사용하여 EC2 인스턴스와의 액세스를 허용하는 것이 좋습니다. NAT 게이트웨이 사용 시 비용 고려 사항이 있습니다. 이 계산 방법을 사용하여 NAT 게이트웨이가 비용 효율적인지 결정하세요. [AWS 결제 비용 및 사용 보고서를 생성](https://aws.amazon.com/blogs/networking-and-content-delivery/identify-and-optimize-public-ipv4-address-usage-on-aws/)하면 이 계산에 필요한 `Number of public IPv4 addresses` 정보를 얻을 수 있습니다.

  ```
  NAT gateway per hour + NAT gateway public IPs + NAT gateway transfer / Existing public IP cost
  ```

  위치:
  + `NAT gateway per hour = $0.045 * 730 hours in a month * Number of Availability Zones the NAT gateways are in`
  + `NAT gateway public IPs = $0.005 * 730 hours in a month * Number of IPs associated with your NAT gateways`
  + `NAT gateway transfer = $0.045 * Number of GBs that will go through the NAT gateway in a month`
  + `Existing public IP cost = $0.005 * 730 hours in a month * Number of public IPv4 addresses`

  합계가 1보다 작은 경우 NAT 게이트웨이가 퍼블릭 IPv4 주소보다 저렴합니다.
+ 퍼블릭 IPv4 주소 및 인터넷 게이트웨이를 사용하는 대신 [AWS PrivateLink](https://docs.aws.amazon.com/vpc/latest/userguide/endpoint-services-overview.html)를 사용하여 AWS 서비스 또는 다른 AWS 계정에서 호스팅되는 서비스에 비공개로 연결합니다.
+ Amazon 소유의 퍼블릭 IPv4 주소를 사용하는 대신 [AWS로 고유 IP 주소 범위를 가져와서(BYOIP)](ec2-byoip.md) 퍼블릭 IPv4 주소에 대한 범위를 사용합니다.
+ [서브넷에서 시작된 인스턴스에 대한 퍼블릭 IPv4 주소 자동 할당](https://docs.aws.amazon.com/vpc/latest/userguide/subnet-public-ip.html)을 끕니다 이 옵션은 일반적으로 서브넷을 생성할 때 VPC에 대해 기본적으로 비활성화되지만 기존 서브넷은 비활성화되어 있는지 확인해야 합니다.
+ 퍼블릭 IPv4 주소가 필요하지 않은 EC2 인스턴스가 있는 경우 [인스턴스에 연결된 네트워크 인터페이스에서 **퍼블릭 IP 자동 할당**이 비활성화되어 있는지 확인](managing-network-interface-ip-addresses.md)하세요.
+ 프라이빗 서브넷의 EC2 인스턴스에 대해 [AWS Global Accelerator에서 액셀러레이터 엔드포인트를 구성](https://docs.aws.amazon.com/global-accelerator/latest/dg/about-endpoints.html)하면 퍼블릭 IP 주소 없이도 인터넷 트래픽이 VPC의 엔드포인트로 직접 전달되게 할 수 있습니다. 또한 [AWS Global Accelerator로 고유 주소를 가져와](https://docs.aws.amazon.com/global-accelerator/latest/dg/using-byoip.html) 액셀러레이터의 고정 IP 주소로 고유 IPv4 주소를 사용할 수 있습니다.

## IPv6 주소
<a name="ipv6-addressing"></a>

IPv6 주소는 전역적으로 고유하며 프라이빗으로 유지되거나 인터넷으로 접속하도록 구성할 수 있습니다. AWS에서는 퍼블릭 및 프라이빗 IPv6 주소를 모두 사용할 수 있습니다:
+ **프라이빗 IPv6**: AWS는 AWS에서 인터넷을 통해 광고되지 않고 광고할 수 없는 주소를 프라이빗 IPv6 주소로 간주합니다.
+ **퍼블릭 IPv6**: AWS는 AWS에서 인터넷에 광고하는 주소를 퍼블릭 IPv6 주소로 간주합니다.

퍼블릭 및 프라이빗 IPv6 주소에 대한 자세한 내용은 *Amazon VPC 사용 설명서*의 [IPv6 주소](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-ip-addressing.html#vpc-ipv6-addresses)를 참조하세요.

C1, M1, M2, M3, T1을 제외한 모든 인스턴스 유형은 IPv6 주소를 지원합니다.

IPv6 CIDR 블록이 VPC 및 서브넷과 연결되어 있고 다음 중 하나에 해당하는 경우 EC2 인스턴스는 IPv6 주소를 받습니다:
+ 서브넷은 시작 중인 인스턴스에 IPv6 주소를 자동으로 할당하도록 구성됩니다. 자세한 내용은 [서브넷의 IP 주소 지정 속성 수정](https://docs.aws.amazon.com/vpc/latest/userguide/subnet-public-ip.html)을 참조하세요.
+ 시작하는 동안 인스턴스에 IPv6 주소를 할당합니다.
+ 시작 후 인스턴스의 기본 네트워크 인터페이스에 IPv6 주소를 할당합니다.
+ 동일 서브넷에서 네트워크 인터페이스에 IPv6 주소를 할당하고 시작을 완료한 후에 인스턴스에 네트워크 인터페이스를 연결합니다.

시작하는 과정에서 인스턴스가 IPv6 주소를 받는 경우, 해당 주소는 인스턴스의 주 네트워크 인터페이스(index 0)와 연결됩니다. 다음 방법으로 인스턴스 기본 네트워크 인터페이스에 대한 IPv6 주소를 관리할 수 있습니다.
+ 네트워크 인터페이스에서 IPv6 주소를 할당 및 할당 해제합니다. 네트워크 인터페이스에 할당할 수 있는 IPv6 주소의 개수, 그리고 인스턴스에 연결할 수 있는 네트워크 인터페이스의 개수는 인스턴스 유형에 따라 달라집니다. 자세한 내용은 [네트워크 인터페이스당 최대 IP 주소](AvailableIpPerENI.md) 섹션을 참조하세요.
+ 기본 IPv6 주소를 활성화합니다. 기본 IPv6 주소를 사용하면 인스턴스나 ENI에 대한 트래픽 중단을 방지할 수 있습니다. 자세한 내용은 [EC2 인스턴스용 네트워크 인터페이스 생성](create-network-interface.md) 또는 [네트워크 인터페이스의 IP 주소 관리](managing-network-interface-ip-addresses.md) 섹션을 참조하세요.

인스턴스를 중지했다가 시작할 때 또는 최대 절전 모드로 전환했다가 시작할 때에는 IPv6 주소가 지속되다가 인스턴스를 종료하면 릴리스됩니다. IPv6 주소는 다른 네트워크 인터페이스에 할당되는 동안에는 재할당할 수 없으므로 먼저 할당을 해제해야 합니다.

서브넷에 대한 라우팅을 제어하거나 보안 그룹 및 네트워크 ACL 규칙을 사용함으로써 인스턴스가 IPv6 주소를 통해 접속이 가능하도록 할지 여부를 제어할 수 있습니다. 자세한 내용은 Amazon VPC 사용 설명서의 [인터네트워크 트래픽 개인 정보 보호](https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html)를 참조하세요.

예약된 IPv6 주소 범위에 대한 자세한 정보는 [IANA IPv6 Special-Purpose Address Registry](http://www.iana.org/assignments/iana-ipv6-special-registry/iana-ipv6-special-registry.xhtml) 및 [RFC4291](https://tools.ietf.org/html/rfc4291)을 참조하세요.

## 다중 IP 주소
<a name="multiple-ip-addresses"></a>

인스턴스에 다중 프라이빗 IPv4 및 IPv6 주소를 지정할 수 있습니다. 인스턴스에 지정할 수 있는 네트워크 인터페이스 및 프라이빗 IPv4 및 IPv6 주소의 수는 인스턴스 유형에 의해 결정됩니다. 자세한 내용은 [네트워크 인터페이스당 최대 IP 주소](AvailableIpPerENI.md) 섹션을 참조하세요.

**사용 사례**
+ 단일 서버에서 다중 SSL 인증서를 사용하거나 특정 IP 주소에 각 인증서를 연결하여 단일 서버에 다중 웹 사이트 호스팅.
+ 각 네트워크 인터페이스에 다중 IP 주소가 있는 네트워크 어플라이언스(방화벽 또는 로드 밸런서 등) 운영.
+ 대기 중인 인스턴스에 보조 IP 주소를 할당하여 인스턴스에서 오류가 발생한 경우 대기 인스턴스로 내부 트래픽 리디렉션.

**다중 IP 주소 동작 방법**
+ 사용자는 모든 네트워크 인터페이스에 보조 프라이빗 IPv4 주소를 할당할 수 있습니다.
+ 연결된 IPv6 CIDR 블록이 있는 서브넷의 네트워크 인터페이스에 다중 IPv6 주소를 할당할 수 있습니다.
+ 네트워크 인터페이스의 서브넷 IPv4 주소 CIDR 블록 범위 내에서 보조 IPv4를 선택해야 합니다.
+ 네트워크 인터페이스의 서브넷 IPv6 CIDR 블록 범위 내에서 IPv6 주소를 선택해야 합니다.
+ 보안 그룹을 개별 IP 주소가 아니라 네트워크 인터페이스와 연결합니다. 따라서 네트워크 인터페이스에 지정한 각 IP 주소가 네트워크 인터페이스의 보안 그룹에 종속됩니다.
+ 다중 IP 주소는 실행 중 또는 중지된 인스턴스에 연결된 네트워크 인터페이스에 할당되거나 할당되지 않을 수 있습니다.
+ 네트워크 인터페이스에 할당된 보조 프라이빗 IPv4 주소는 사용자가 명시적으로 허용한 경우 다른 네트워크 인터페이스로 재할당될 수 있습니다.
+ IPv6 주소는 다른 네트워크 인터페이스에 재할당될 수 없습니다. 우선 기존 네트워크 인터페이스에서 IPv6 주소의 할당을 해제해야 합니다.
+ 명령줄 도구 또는 API를 이용하여 네트워크 인터페이스에 IP 주소를 여러 개 할당하는 경우 IP 주소 중 하나를 할당할 수 없으면 전체 작업이 실패하게 됩니다.
+ 인스턴스에서 분리되거나 인스턴스에 연결되어도 기본 프라이빗 IPv4 주소, 보조 프라이빗 IPv4 주소, 탄력적 IP 주소 및 IPv6 주소는 보조 네트워크 인터페이스에 연결 상태를 유지합니다.
+ 기본 네트워크 인터페이스는 인스턴스에서 분리할 수 없지만 기본 네트워크 인터페이스의 보조 프라이빗 IPv4 주소는 다른 네트워크 인터페이스로 재할당이 가능합니다.

자세한 내용은 [EC2 인스턴스에 대한 보조 IP 주소](instance-secondary-ip-addresses.md) 섹션을 참조하세요.

## EC2 인스턴스 호스트 이름
<a name="amazon-dns"></a>

EC2 인스턴스를 생성할 때 AWS는 해당 인스턴스에 대한 호스트 이름을 만듭니다. 호스트 이름 유형 및 AWS가 프로비저닝하는 방법에 대한 자세한 내용은 [EC2 인스턴스 호스트 이름 및 도메인](ec2-instance-naming.md) 단원을 참조하세요. Amazon은 Amazon이 제공한 호스트 이름을 IPv4 및 IPv6 주소로 변환하는 DNS 서버를 제공합니다. Amazon DNS 서버는 사용자 VPC 네트워크 범위 \$12의 범위에 위치합니다. 자세한 내용은 *Amazon VPC 사용 설명서*의 [VPC에 대한 DNS 속성](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-dns.html)을 참조하세요.

## 링크-로컬 주소
<a name="link-local-addresses"></a>

링크-로컬 주소는 잘 알려진 라우팅할 수 없는 IP 주소입니다. Amazon EC2는 링크-로컬 주소 공간의 주소를 사용하여 EC2 인스턴스에서만 액세스할 수 있는 서비스를 제공합니다. 이러한 서비스는 인스턴스가 아닌 기본 호스트에서 실행됩니다. 이러한 서비스의 링크-로컬 주소에 액세스하면 Xen 하이퍼바이저 또는 Nitro 컨트롤러와 통신합니다.

**링크-로컬 주소 범위**
+ IPv4 – 169.254.0.0/16(169.254.0.0\$1169.254.255.255)
+ IPv6 – fe80::/10

**링크-로컬 주소를 사용하여 액세스하는 서비스**
+ [인스턴스 메타데이터 서비스](instancedata-data-retrieval.md)
+ [Amazon Route 53 Resolver](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-dns.html#AmazonDNS)(Amazon DNS 서버라고도 함)
+ [Amazon Time Sync Service](set-time.md)
+ [AWS KMS 서버](common-messages.md#activate-windows)

# EC2 인스턴스에 대한 IPv4 주소 관리
<a name="working-with-ip-addresses"></a>

인스턴스를 시작할 때 퍼블릭 IPv4 주소를 인스턴스에 할당할 수 있습니다. **인스턴스(Instances)** 페이지 또는 **네트워크 인터페이스(Network Interfaces)** 페이지를 통해 콘솔에서 인스턴스의 IPv4 주소를 볼 수 있습니다.

**Topics**
+ [시작 시 퍼블릭 IPv4 주소 할당](#public-ip-addresses)
+ [시작 시 프라이빗 IPv4 주소 할당](#assign-private-ipv4-address)
+ [기본 IPv4 주소 보기](#view-instance-ipv4-addresses)
+ [인스턴스 메타데이터를 사용하여 IPv4 주소 보기](#view-instance-ipv4-addresses-imds)

## 시작 시 퍼블릭 IPv4 주소 할당
<a name="public-ip-addresses"></a>

각 서브넷은 퍼블릭 IP 주소가 할당되는 서브넷에서 인스턴스를 시작할지 여부를 결정하는 속성을 갖습니다. 기본적으로 기본이 아닌 서브넷의 이 속성은 false로 설정되고 기본 서브넷의 속성 값은 true입니다. 인스턴스를 시작할 때 퍼블릭 IPv4 주소 지정 기능을 사용하여 인스턴스에 퍼블릭 IPv4 주소가 할당되는지 여부를 제어할 수도 있습니다. 서브넷의 IP 주소 지정 속성의 기본 동작을 재정의할 수 있습니다. 퍼블릭 IPv4 주소는 Amazon의 퍼블릭 IPv4 주소 풀에서 할당되고 디바이스 색인이 0인 네트워크 인터페이스에 할당됩니다. 이 기능은 인스턴스 시작 시점의 특정 조건에 따라 달라집니다.

**고려 사항**
+ [네트워크 인터페이스와 연결된 IP 주소를 관리](managing-network-interface-ip-addresses.md)하여 시작 후 인스턴스에서 퍼블릭 IP 주소 할당을 취소할 수 있습니다. 퍼블릭 IPv4 주소에 대한 자세한 내용은 [퍼블릭 IPv4 주소](using-instance-addressing.md#concepts-public-addresses) 섹션을 참조하세요.
+ 네트워크 인터페이스를 2개 이상 지정하면 퍼블릭 IP 주소를 자동 할당할 수 없습니다. 또한 디바이스 색인 0에 대해 기존 네트워크 인터페이스를 지정하면 퍼블릭 IP 자동 할당 기능을 사용하여 서브넷 설정을 재정의할 수 없습니다.
+ 시작 도중에 퍼블릭 IP 주소를 인스턴스에 할당하는지의 여부에 관계없이 시작 후에는 인스턴스와 탄력적 IP 주소를 연결할 수 있습니다. 자세한 내용은 [탄력적 IP 주소](elastic-ip-addresses-eip.md) 섹션을 참조하세요. 또한, 사용자는 서브넷의 퍼블릭 IPv4 주소 지정 동작을 변경할 수 있습니다. 자세한 내용은 [서브넷의 퍼블릭 IPv4 주소 지정 속성 수정](https://docs.aws.amazon.com/vpc/latest/userguide/subnet-public-ip.html)을 참조하세요.

------
#### [ Console ]

**시작 시 퍼블릭 IPv4 주소를 할당하는 방법**  
절차에 따라 [인스턴스를 시작](ec2-launch-instance-wizard.md)하고 [Network Settings](ec2-instance-launch-parameters.md#liw-network-settings)(네트워크 설정)를 구성할 때 **Auto-assign Public IP**(퍼블릭 IP 자동 할당) 옵션을 선택합니다.

------
#### [ AWS CLI ]

**시작 시 퍼블릭 IPv4 주소를 할당하는 방법**  
[run-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/run-instances.html) 명령을 `--associate-public-ip-address` 옵션과 함께 사용합니다.

```
--associate-public-ip-address
```

------
#### [ PowerShell ]

**시작 시 퍼블릭 IPv4 주소를 할당하는 방법**  
`-AssociatePublicIp` 파라미터와 함께 [New-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2Instance.html) cmdlet을 사용합니다.

```
-AssociatePublicIp $true
```

------

## 시작 시 프라이빗 IPv4 주소 할당
<a name="assign-private-ipv4-address"></a>

서브넷의 IPv4 주소 범위 중에서 IPv4 주소를 지정하거나 Amazon EC2가 선택하도록 할 수 있습니다. 이 주소는 기본 네트워크 인터페이스에 할당됩니다.

시작 시 IPv4 주소를 할당하는 방법은 [인스턴스에 보조 IP 주소 할당](instance-secondary-ip-addresses.md#assign-secondary-ip-address) 단원을 참조하세요.

------
#### [ Console ]

**시작 시 프라이빗 IPv4 주소를 할당하는 방법**  
[인스턴스 시작](ec2-launch-instance-wizard.md) 절차를 따릅니다. [네트워크 설정](ec2-instance-launch-parameters.md#liw-network-settings)을 구성할 때 **고급 네트워크 구성**을 확장하고 **기본 IP**에 대한 값을 입력합니다.

------
#### [ AWS CLI ]

**시작 시 프라이빗 IPv4 주소를 할당하는 방법**  
[run-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/run-instances.html) 명령을 `--private-ip-address` 옵션과 함께 사용합니다.

```
--private-ip-addresses 10.251.50.12
```

Amazon EC2가 IP 주소를 선택하도록 하려면 이 옵션을 생략합니다.

------
#### [ PowerShell ]

**시작 시 프라이빗 IPv4 주소를 할당하는 방법**  
`-PrivateIpAddress` 파라미터와 함께 [New-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2Instance.html) cmdlet을 사용합니다.

```
-PrivateIpAddress 10.251.50.12
```

Amazon EC2가 IP 주소를 선택하도록 하려면 이 파라미터를 생략합니다.

------

## 기본 IPv4 주소 보기
<a name="view-instance-ipv4-addresses"></a>

퍼블릭 IPv4 주소는 콘솔에서 네트워크 인터페이스의 속성으로 표시되지만 NAT를 통해 주 프라이빗 IPv4 주소와 매핑됩니다. 그러므로, 예를 들어 `ifconfig`(Linux) 또는 `ipconfig`(Windows)를 통해 인스턴스 네트워크 카드의 속성을 확인하는 경우 퍼블릭 IPv4 주소는 표시되지 않습니다.

------
#### [ Console ]

**인스턴스에 대한 IPv4 주소를 보는 방법**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 **인스턴스**를 선택합니다.

1. 인스턴스를 선택합니다.

1. **네트워킹** 탭에서 **퍼블릭 IPv4 주소**와 **프라이빗 IPv4 주소**를 찾습니다.

1. (선택 사항) **네트워킹** 탭에는 네트워크 인터페이스와 인스턴스에 대한 탄력적 IP 주소도 있습니다.

------
#### [ AWS CLI ]

**인스턴스에 대한 기본 IPv4 주소를 보는 방법**  
아래와 같이 [describe-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instances.html) 명령을 사용합니다.

```
aws ec2 describe-instances \
    --instance-ids i-1234567890abcdef0 \
    --query "Reservations[].Instances[].PrivateIpAddress" \
    --output text
```

다음은 예제 출력입니다.

```
10.251.50.12
```

------
#### [ PowerShell ]

**인스턴스에 대한 기본 IPv4 주소를 보는 방법**  
[Get-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Instance.html) cmdlet을 사용합니다.

```
(Get-EC2Instance `
    -InstanceId i-1234567890abcdef0).Instances.PrivateIpAddress
```

다음은 예제 출력입니다.

```
10.251.50.12
```

------

## 인스턴스 메타데이터를 사용하여 IPv4 주소 보기
<a name="view-instance-ipv4-addresses-imds"></a>

인스턴스 메타데이터를 검색하여 인스턴스에 대한 IPv4 주소를 가져올 수 있습니다. 자세한 내용은 [인스턴스 메타데이터를 사용하여 EC2 인스턴스를 관리합니다.](ec2-instance-metadata.md) 섹션을 참조하세요.

**인스턴스 메타데이터를 사용하여 IPv4 주소를 보는 방법**

1. 인스턴스에 연결합니다. 자세한 내용은 [EC2 인스턴스에 연결](connect.md) 섹션을 참조하세요.

1. 다음 명령 중 하나를 실행합니다.

------
#### [ IMDSv2 ]

**Linux**  
Linux 인스턴스에서 다음 명령을 실행합니다.

   ```
   TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"` \
   && curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/local-ipv4
   ```

**Windows**  
Windows 인스턴스에서 다음 명령을 실행합니다.

   ```
   [string]$token = Invoke-RestMethod -Headers @{"X-aws-ec2-metadata-token-ttl-seconds" = "21600"} `
       -Method PUT -Uri http://169.254.169.254/latest/api/token
   ```

   ```
   Invoke-RestMethod -Headers @{"X-aws-ec2-metadata-token" = $token} `
       -Method GET -Uri http://169.254.169.254/latest/meta-data/local-ipv4
   ```

------
#### [ IMDSv1 ]

**Linux**  
Linux 인스턴스에서 다음 명령을 실행합니다.

   ```
   curl http://169.254.169.254/latest/meta-data/local-ipv4
   ```

**Windows**  
Windows 인스턴스에서 다음 명령을 실행합니다.

   ```
   Invoke-RestMethod http://169.254.169.254/latest/meta-data/local-ipv4
   ```

------

1. 다음과 같은 명령 중 하나를 사용하여 퍼블릭 IP 주소에 액세스합니다. 인스턴스와 연결된 탄력적 IP 주소가 있으면 명령을 통해 탄력적 IP 주소가 반환됩니다.

------
#### [ IMDSv2 ]

**Linux**  
Linux 인스턴스에서 다음 명령을 실행합니다.

   ```
   [ec2-user ~]$ TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"` \
   && curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/public-ipv4
   ```

**Windows**  
Windows 인스턴스에서 다음 명령을 실행합니다.

   ```
   [string]$token = Invoke-RestMethod -Headers @{"X-aws-ec2-metadata-token-ttl-seconds" = "21600"} `
       -Method PUT -Uri http://169.254.169.254/latest/api/token
   ```

   ```
   Invoke-RestMethod -Headers @{"X-aws-ec2-metadata-token" = $token} `
       -Method GET -Uri http://169.254.169.254/latest/meta-data/public-ipv4
   ```

------
#### [ IMDSv1 ]

**Linux**  
Linux 인스턴스에서 다음 명령을 실행합니다.

   ```
   curl http://169.254.169.254/latest/meta-data/public-ipv4
   ```

**Windows**  
Windows 인스턴스에서 다음 명령을 실행합니다.

   ```
   Invoke-RestMethod http://169.254.169.254/latest/meta-data/public-ipv4
   ```

------

# EC2 인스턴스에 대한 IPv6 주소 관리
<a name="working-with-ipv6-addresses"></a>

VPC와 서브넷에 연결된 IPv6 CIDR 블록이 있는 경우, 시작 중 또는 시작 후 인스턴스에 IPv6 주소를 할당할 수 있습니다. **인스턴스** 페이지 또는 **네트워크 인터페이스** 페이지를 통해 콘솔에서 인스턴스의 IPv6 주소에 액세스할 수 있습니다. 다음 작업은 인스턴스의 IP 주소를 구성합니다. 대신 네트워크 인터페이스의 IP 주소를 구성하려면 [네트워크 인터페이스의 IP 주소 관리](managing-network-interface-ip-addresses.md) 섹션을 참조하세요.

**Topics**
+ [인스턴스에 IPv6 주소 할당](#assign-ipv6-address)
+ [인스턴스에 대한 IPv6 주소 보기:](#view-ipv6-addresses)
+ [인스턴스 메타데이터를 사용하여 IPv6 주소 보기](#view-ipv6-addresses-imds)
+ [인스턴스에서 IPv6 주소 할당 해제](#unassign-ipv6-address)

## 인스턴스에 IPv6 주소 할당
<a name="assign-ipv6-address"></a>

서브넷의 IPv6 주소 범위 중에서 IPv6 주소를 지정하거나 Amazon EC2가 선택하도록 할 수 있습니다. 이 주소는 기본 네트워크 인터페이스에 할당됩니다. C1, M1, M2, M3, T1 인스턴스 유형은 IPv6 주소를 지원하지 않습니다.

------
#### [ Console ]

**시작 시 IPv6 주소를 할당하는 방법**  
[인스턴스 시작](ec2-launch-instance-wizard.md) 절차를 따릅니다. [네트워크 설정](ec2-instance-launch-parameters.md#liw-network-settings)을 구성할 때 **IPv6 IP 자동 할당** 옵션을 선택합니다. 이 옵션이 표시되지 않으면 선택한 서브넷과 연결된 IPv6 CIDR 블록이 없는 것입니다.

**시작 후에 IPv6 주소를 할당하려면**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 **인스턴스**를 선택합니다.

1. 인스턴스를 선택하고 **작업**, **네트워킹**, **IP 주소 관리**를 차례로 선택합니다.

1. 네트워크 인터페이스를 확장합니다. **IPv6 주소**에서 **새 IP 주소 할당**을 선택합니다.

1. 서브넷 범위 중에서 IPv6 주소를 입력하거나 필드를 비워 두어 Amazon EC2가 IPv6 주소를 선택하도록 합니다. 이 옵션이 표시되지 않으면 인스턴스 서브넷과 연결된 IPv6 CIDR 블록이 없는 것입니다.

1. **저장**을 선택합니다.

------
#### [ AWS CLI ]

**시작 시 IPv6 주소를 할당하는 방법**  
[run-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/run-instances.html) 명령을 `--ipv6-addresses` 옵션과 함께 사용합니다. 다음 예제에서는 2개의 IPv6 주소를 할당합니다.

```
--ipv6-addresses Ipv6Address=2001:db8::1234:5678:1.2.3.4 Ipv6Address=2001:db8::1234:5678:5.6.7.8
```

Amazon EC2가 IPv6 주소를 선택하도록 하려면 대신 `--ipv6-address-count` 옵션을 사용합니다. 다음 예제에서는 2개의 IPv6 주소를 할당합니다.

```
--ipv6-address-count 2
```

**시작 후에 IPv6 주소를 할당하려면**  
[assign-ipv6-addresses](https://docs.aws.amazon.com/cli/latest/reference/ec2/assign-ipv6-addresses.html) 명령을 사용합니다. 다음 예제에서는 2개의 IPv6 주소를 할당합니다.

```
aws ec2 assign-ipv6-addresses \ 
    --network-interface-id eni-1234567890abcdef0 \
    --ipv6-addresses 2001:db8::1234:5678:1.2.3.4 2001:db8::1234:5678:5.6.7.8
```

Amazon EC2가 IPv6 주소를 선택하도록 하려면 대신 `--ipv6-address-count` 옵션을 사용합니다. 다음 예제에서는 2개의 IPv6 주소를 할당합니다.

```
aws ec2 assign-ipv6-addresses \
    --network-interface-id eni-1234567890abcdef0 \
    --ipv6-address-count 2
```

------
#### [ PowerShell ]

**시작 시 IPv6 주소를 할당하는 방법**  
`-Ipv6Address` 파라미터와 함께 [New-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2Instance.html) cmdlet을 사용합니다. 다음 예제에서는 2개의 IPv6 주소를 할당합니다.

```
-Ipv6Address $ipv6addr1,$ipv6addr2
```

다음과 같이 IPv6 주소를 정의합니다.

```
$ipv6addr1 = New-Object Amazon.EC2.Model.InstanceIpv6Address
$ipv6addr1.Ipv6Address = "2001:db8::1234:5678:1.2.3.4"
$ipv6addr2 = New-Object Amazon.EC2.Model.InstanceIpv6Address
$ipv6addr2.Ipv6Address = "2001:db8::1234:5678:5.6.7.8"
```

Amazon EC2가 IPv6 주소를 선택하도록 하려면 대신 `-Ipv6AddressCount` 파라미터를 사용합니다. 다음 예제에서는 2개의 IPv6 주소를 할당합니다.

```
-Ipv6AddressCount 2
```

**시작 후에 IPv6 주소를 할당하려면**  
[Register-EC2Ipv6AddressList](https://docs.aws.amazon.com/powershell/latest/reference/items/Register-EC2Ipv6AddressList.html) cmdlet을 사용합니다. 다음 예제에서는 2개의 IPv6 주소를 할당합니다.

```
Register-EC2Ipv6AddressList `
    -NetworkInterfaceId eni-1234567890abcdef0 `
    -Ipv6Address "2001:db8::1234:5678:1.2.3.4","2001:db8::1234:5678:5.6.7.8"
```

Amazon EC2가 IPv6 주소를 선택하도록 하려면 대신 `-Ipv6AddressCount` 파라미터를 사용합니다. 다음 예제에서는 2개의 IPv6 주소를 할당합니다.

```
Register-EC2Ipv6AddressList `
    -NetworkInterfaceId eni-1234567890abcdef0 `
    -Ipv6AddressCount 2
```

------

## 인스턴스에 대한 IPv6 주소 보기:
<a name="view-ipv6-addresses"></a>

인스턴스에 대한 IPv6 주소를 볼 수 있습니다.

------
#### [ Console ]

**인스턴스에 대한 IPv6 주소를 보는 방법**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 **인스턴스**를 선택합니다.

1. 인스턴스를 선택합니다.

1. **네트워킹** 탭에서 **IPv6 주소**를 찾습니다.

------
#### [ AWS CLI ]

**인스턴스에 대한 IPv6 주소를 보는 방법**  
아래와 같이 [describe-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instances.html) 명령을 사용합니다.

```
aws ec2 describe-instances \
    --instance-ids i-1234567890abcdef0 \
    --query "Reservations[*].Instances[].Ipv6Address" \
    --output text
```

다음은 예제 출력입니다.

```
2001:db8::1234:5678:1.2.3.4
```

------
#### [ PowerShell ]

**인스턴스에 대한 IPv6 주소를 보는 방법**  
[Get-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Instance.html) cmdlet을 사용합니다.

```
(Get-EC2Instance `
    -InstanceId i-1234567890abcdef0).Instances.Ipv6Address
```

다음은 예제 출력입니다.

```
2001:db8::1234:5678:1.2.3.4
```

------

## 인스턴스 메타데이터를 사용하여 IPv6 주소 보기
<a name="view-ipv6-addresses-imds"></a>

인스턴스에 연결한 후 인스턴스 메타데이터를 사용하여 IPv6 주소를 검색할 수 있습니다. 먼저, `http://169.254.169.254/latest/meta-data/network/interfaces/macs/`에서 인스턴스의 MAC 주소를 가져와야 합니다.

------
#### [ IMDSv2 ]

**Linux**  
Linux 인스턴스에서 다음 명령을 실행합니다.

```
TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"` \
&& curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/network/interfaces/macs/mac-address/ipv6s
```

**Windows**  
Windows 인스턴스에서 다음과 같은 cmdlet을 실행합니다.

```
[string]$token = Invoke-RestMethod -Headers @{"X-aws-ec2-metadata-token-ttl-seconds" = "21600"} `
    -Method PUT -Uri http://169.254.169.254/latest/api/token
```

```
Invoke-RestMethod -Headers @{"X-aws-ec2-metadata-token" = $token} `
    -Method GET -Uri http://169.254.169.254/latest/meta-data/network/interfaces/macs/mac-address/ipv6s
```

------
#### [ IMDSv1 ]

**Linux**  
Linux 인스턴스에서 다음 명령을 실행합니다.

```
curl http://169.254.169.254/latest/meta-data/network/interfaces/macs/mac-address/ipv6s
```

**Windows**  
Windows 인스턴스에서 다음 cmdlet을 실행합니다.

```
Invoke-RestMethod -Uri http://169.254.169.254/latest/meta-data/network/interfaces/macs/mac-address/ipv6s
```

------

## 인스턴스에서 IPv6 주소 할당 해제
<a name="unassign-ipv6-address"></a>

언제든지 인스턴스에서 IPv6 주소 할당을 해제할 수 있습니다.

------
#### [ Console ]

**인스턴스에서 IPv6 주소 할당 해제**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 **인스턴스**를 선택합니다.

1. 인스턴스를 선택하고 **작업**, **네트워킹**, **IP 주소 관리**를 차례로 선택합니다.

1. 네트워크 인터페이스를 확장합니다. **IPv6 주소**에서 해당 IPv6 주소 옆의 **할당 해제**를 선택합니다.

1. **저장**을 선택합니다.

------
#### [ AWS CLI ]

**인스턴스에서 IPv6 주소 할당 해제**  
[unassign-ipv6-addresses](https://docs.aws.amazon.com/cli/latest/reference/ec2/unassign-ipv6-addresses.html) 명령을 사용합니다.

```
aws ec2 unassign-ipv6-addresses \ 
    --network-interface-id eni-1234567890abcdef0 \
    --ipv6-addresses 2001:db8::1234:5678:1.2.3.4
```

------
#### [ PowerShell ]

**인스턴스에서 IPv6 주소 할당 해제**  
[Unregister-EC2Ipv6AddressList](https://docs.aws.amazon.com/powershell/latest/reference/items/Unregister-EC2Ipv6AddressList.html) cmdlet을 사용합니다.

```
Unregister-EC2Ipv6AddressList `
    -NetworkInterfaceId eni-1234567890abcdef0 `
    -Ipv6Address 2001:db8::1234:5678:1.2.3.4
```

------

# EC2 인스턴스에 대한 보조 IP 주소
<a name="instance-secondary-ip-addresses"></a>

네트워크 인터페이스에 할당된 첫 번째 IPv4 주소를 기본 IP 주소라고 합니다. 보조 IP 주소는 네트워크 인터페이스에 할당된 추가 IPv4 주소입니다. 자세한 내용은 [다중 IP 주소](using-instance-addressing.md#multiple-ip-addresses) 섹션을 참조하세요.

인스턴스에 여러 프라이빗 IPv6 주소를 할당할 수도 있습니다. 자세한 내용은 [EC2 인스턴스에 대한 IPv6 주소 관리](working-with-ipv6-addresses.md) 섹션을 참조하세요.

**Topics**
+ [인스턴스에 보조 IP 주소 할당](#assign-secondary-ip-address)
+ [보조 IP 주소를 사용하도록 운영 체제 구성](#StepTwoConfigOS)
+ [인스턴스에서 보조 프라이빗 IP 주소 할당을 해제하는 방법](#unassign-secondary-ip-address)

## 인스턴스에 보조 IP 주소 할당
<a name="assign-secondary-ip-address"></a>

인스턴스 시작 시 또는 인스턴스 실행 후 인스턴스에 대한 네트워크 인터페이스에 보조 IP 주소를 할당할 수 있습니다.

------
#### [ Console ]

**시작 시 보조 IP 주소를 할당하는 방법**

1. [인스턴스 시작](ec2-launch-instance-wizard.md) 절차를 따릅니다. [네트워크 설정](ec2-instance-launch-parameters.md#liw-network-settings)을 구성할 때 **고급 네트워크 구성**을 확장합니다.

1. **보조 IP**에는 **자동 할당**을 선택하고 Amazon EC2에서 할당할 IP 주소 수를 입력합니다. 또는 **수동 할당**을 선택하고 IPv4를 입력합니다.

1. 나머지 단계를 완료하여 인스턴스를 시작합니다.

**시작 후 보조 IP 주소를 할당하는 방법**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 **인스턴스**를 선택합니다.

1. 인스턴스를 선택하고 **작업**, **네트워킹**, **IP 주소 관리**를 차례로 선택합니다.

1. 네트워크 인터페이스를 확장합니다.

1. IPv4 주소를 추가하려면 **IPv4 주소**에서 **새 IP 주소 할당을** 선택합니다. 서브넷 범위 중에서 IPv4 주소를 입력하거나 필드를 비워 두어 Amazon EC2가 선택하도록 합니다.

1. **저장**을 선택합니다.

------
#### [ AWS CLI ]

**시작 시 보조 IP 주소를 할당하는 방법**  
[run-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/run-instances.html) 명령을 `--secondary-private-ip-addresses` 옵션과 함께 사용합니다.

```
--secondary-private-ip-addresses 10.251.50.12
```

Amazon EC2가 IP 주소를 선택하도록 하려면 대신 `--secondary-private-ip-address-count` 옵션을 사용합니다. 다음 예제에서는 1개의 보조 IP 주소를 할당합니다.

```
--secondary-private-ip-address-count 1
```

또는 네트워크 인터페이스를 생성할 수도 있습니다. 자세한 내용은 [EC2 인스턴스용 네트워크 인터페이스 생성](create-network-interface.md) 섹션을 참조하세요.

**시작 후 보조 IP 주소를 할당하는 방법**  
[assign-private-ip-addresses](https://docs.aws.amazon.com/cli/latest/reference/ec2/assign-private-ip-addresses.html) 명령을 `--private-ip-addresses` 옵션과 함께 사용합니다.

```
aws ec2 assign-private-ip-addresses \
    --network-interface-ids eni-1234567890abcdef0 \
    --private-ip-addresses 10.251.50.12
```

Amazon EC2가 IPv4 주소를 선택하도록 하려면 대신 `--secondary-private-ip-address-count` 파라미터를 사용합니다. 다음 예제에서는 1개의 IPv4 주소를 할당합니다.

```
aws ec2 assign-private-ip-addresses \
    --network-interface-ids eni-1234567890abcdef0 \
    --secondary-private-ip-address-count 1
```

------
#### [ PowerShell ]

**시작 시 보조 IP 주소를 할당하는 방법**  
네트워크 인터페이스를 생성해야 합니다. 자세한 내용은 [EC2 인스턴스용 네트워크 인터페이스 생성](create-network-interface.md) 섹션을 참조하세요.

**시작 후 보조 IP 주소를 할당하는 방법**  
`-PrivateIpAddress` 파라미터와 함께 [Register-EC2PrivateIpAddress](https://docs.aws.amazon.com/powershell/latest/reference/items/Register-EC2PrivateIpAddress.html) cmdlet을 사용합니다.

```
Register-EC2PrivateIpAddress `
    -NetworkInterfaceId eni-1234567890abcdef0 `
    -PrivateIpAddress 10.251.50.12
```

Amazon EC2가 IPv4 주소를 선택하도록 하려면 대신 `-SecondaryPrivateIpAddressCount` 파라미터를 사용합니다. 다음 예제에서는 1개의 IPv4 주소를 할당합니다.

```
Register-EC2PrivateIpAddress `
    -NetworkInterfaceId eni-1234567890abcdef0 `
    -SecondaryPrivateIpAddressCount 1
```

------

## 보조 IP 주소를 사용하도록 운영 체제 구성
<a name="StepTwoConfigOS"></a>

인스턴스에 보조 프라이빗 IP 주소를 할당한 후 추가 프라이빗 IPv4 주소가 인식되도록 인스턴스의 운영 체제를 구성해야 합니다.

**Linux 인스턴스**
+ Amazon Linux를 사용하는 경우 ec2-net-utils 패키지로 이 단계를 수행할 수 있습니다. ec2-net-utils는 인스턴스 실행 중에 사용자가 연결한 추가 네트워크 인터페이스를 구성하고 DHCP 임대가 갱신되는 동안 보조 IPv4 주소를 새로 고침하며 관련이 있는 라우팅 규칙을 업데이트합니다. 시스템에 따라 `sudo systemctl restart systemd-networkd`(AL2023) 또는 `sudo service network restart`(Amazon Linux 2) 명령 중 하나를 사용하여 인터페이스 목록을 즉시 새로 고칠 수 있습니다. 다음 `ip addr li` 명령을 사용하여 최신 목록을 볼 수 있습니다. 네트워크 구성을 수동으로 설정해야 하는 경우 ec2-net-utils 패키지를 삭제하면 됩니다. 자세한 내용은 [Configure your network interface using ec2-net-utils](https://docs.aws.amazon.com/linux/al2/ug/ec2-net-utils.html)를 참조하세요.
+ 다른 Linux 배포판을 사용하는 경우 해당 Linux 배포판에서 제공된 문서를 참조하세요. 추가 네트워크 인터페이스 및 보조 IPv4 주소 구성 정보를 검색합니다. 동일 네트워크에 있는 인스턴스에 인터페이스가 1개 이상 있는 경우 라우팅 규칙을 사용하여 비대칭 라우팅으로 동작하는 것과 관련된 정보를 검색합니다.

**Windows 인스턴스**  
자세한 내용은 [Windows 인스턴스의 보조 프라이빗 IPv4 주소 구성](config-windows-multiple-ip.md) 섹션을 참조하세요.

## 인스턴스에서 보조 프라이빗 IP 주소 할당을 해제하는 방법
<a name="unassign-secondary-ip-address"></a>

보조 프라이빗 IP 주소가 더는 필요하지 않으면 인스턴스 또는 네트워크 인터페이스에서 할당을 해제할 수 있습니다. 보조 프라이빗 IPv4 주소가 네트워크 인터페이스에서 할당이 해제된 경우 탄력적 IP 주소(존재하는 경우)도 또한 연결이 해제됩니다.

------
#### [ Console ]

**인스턴스에서 보조 프라이빗 IPv4 주소의 할당을 해제하려면**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 **인스턴스**를 선택합니다.

1. 인스턴스를 선택하고 **작업**, **네트워킹**, **IP 주소 관리**를 선택합니다.

1. 네트워크 인터페이스를 확장합니다. **IPv4 주소**에서 할당을 해제할 IPv4 주소에 대해 **할당 해제**를 선택합니다.

1. **저장**을 선택합니다.

------
#### [ AWS CLI ]

**보조 프라이빗 IP 주소 할당 해제 방법**  
[unassign-private-ip-addresses](https://docs.aws.amazon.com/cli/latest/reference/ec2/unassign-private-ip-addresses.html) 명령을 사용합니다.

```
aws ec2 unassign-private-ip-addresses \
    --network-interface eni-1234567890abcdef0\
    --private-ip-addresses 10.251.50.12
```

------
#### [ PowerShell ]

**보조 프라이빗 IP 주소 할당 해제 방법**  
[Unregister-EC2PrivateIpAddress](https://docs.aws.amazon.com/powershell/latest/reference/items/Unregister-EC2PrivateIpAddress.html) cmdlet을 사용합니다.

```
Unregister-EC2PrivateIpAddress `
    -NetworkInterface eni-1234567890abcdef0 `
    -PrivateIpAddress 10.251.50.12
```

------

# Windows 인스턴스의 보조 프라이빗 IPv4 주소 구성
<a name="config-windows-multiple-ip"></a>

인스턴스에서 다중 프라이빗 IPv4 주소를 지정할 수 있습니다. 인스턴스에 보조 프라이빗 IPv4 주소를 배정한 후에는 보조 프라이빗 IPv4 주소를 인식하도록 인스턴스의 운영 체제를 구성해야 합니다.

**참고**  
이러한 지침은 Windows Server 2022에 기초합니다. 이러한 단계의 구현은 Windows 인스턴스의 운영 체제에 따라 다를 수 있습니다.

**Topics**
+ [사전 조건](#prereq-steps)
+ [1단계: 인스턴스에서 고정 IP 주소 지정 구성](#step1)
+ [2단계: 인스턴스에 대한 보조 프라이빗 IP 주소 구성](#step2)
+ [3단계: 보조 프라이빗 IP 주소를 사용하도록 애플리케이션 구성](#step3)

## 사전 조건
<a name="prereq-steps"></a>
+ 보조 프라이빗 IPv4 주소를 인스턴스의 네트워크 인터페이스에 할당합니다. 인스턴스 시작 시 또는 인스턴스가 실행된 다음 보조 프라이빗 IPv4 주소를 할당할 수 있습니다. 자세한 내용은 [인스턴스에 보조 IP 주소 할당](instance-secondary-ip-addresses.md#assign-secondary-ip-address) 섹션을 참조하세요.

## 1단계: 인스턴스에서 고정 IP 주소 지정 구성
<a name="step1"></a>

Windows 인스턴스에서 여러 IP 주소를 사용할 수 있도록 하려면 DHCP 보다는 고정 IP 주소 지정 방식을 사용하도록 인스턴스를 구성해야 합니다.

**중요**  
인스턴스에서 고정 IP 주소 지정을 구성하는 경우 IP 주소가 콘솔, CLI 또는 API에 표시된 것과 정확히 일치해야 합니다. 이러한 IP 주소를 잘못 입력할 경우 인스턴스가 연결하지 못할 수 있습니다.

**Windows 인스턴스에서 고정 IP 주소 지정을 구성하려면**

1.  인스턴스에 연결합니다.

1. 먼저 다음 단계를 수행하여 인스턴스에 대한 IP 주소, 서브넷 마스크 및 기본 게이트웨이 주소를 찾습니다.

   1. PowerShell에서 다음 명령을 실행합니다.

     ```
     ipconfig /all
     ```

     출력을 검토하고 네트워크 인터페이스에 대한 **IPv4 주소**, **서브넷 마스크**, **기본 게이트웨이**, **DNS 서버** 값을 기록해 둡니다. 출력은 다음 예제와 비슷합니다.

     ```
     ...
     
     Ethernet adapter Ethernet 4:
     
        Connection-specific DNS Suffix  . : us-west-2.compute.internal
        Description . . . . . . . . . . . : Amazon Elastic Network Adapter #2
        Physical Address. . . . . . . . . : 02-9C-3B-FC-8E-67
        DHCP Enabled. . . . . . . . . . . : Yes
        Autoconfiguration Enabled . . . . : Yes
        Link-local IPv6 Address . . . . . : fe80::f4d1:a773:5afa:cd1%7(Preferred)
        IPv4 Address. . . . . . . . . . . : 10.200.0.128(Preferred)
        Subnet Mask . . . . . . . . . . . : 255.255.255.0
        Lease Obtained. . . . . . . . . . : Monday, April 8, 2024 12:19:29 PM
        Lease Expires . . . . . . . . . . : Monday, April 8, 2024 4:49:30 PM
        Default Gateway . . . . . . . . . : 10.200.0.1
        DHCP Server . . . . . . . . . . . : 10.200.0.1
        DHCPv6 IAID . . . . . . . . . . . : 151166011
        DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-2D-67-AC-FC-12-34-9A-BE-A5-E7
        DNS Servers . . . . . . . . . . . : 10.200.0.2
        NetBIOS over Tcpip. . . . . . . . : Enabled
     ```

1. PowerShell에서 다음 명령을 실행하여 **네트워킹 및 공유 센터**를 엽니다.

   ```
   & $env:SystemRoot\system32\control.exe ncpa.cpl
   ```

1. 네트워크 인터페이스(로컬 영역 연결 또는 이더넷)에 대한 컨텍스트 메뉴를 열고(마우스 오른쪽 버튼 클릭) **속성**을 선택합니다.

1. **인터넷 프로토콜 버전 4(TCP/IPv4)**를 선택하고 **속성**을 클릭합니다.

1. **인터넷 프로토콜 버전 4(TCP/IPv4) 속성** 대화 상자에서 **다음 IP 주소 사용**을 선택하고 다음 값을 입력한 다음 **확인**을 클릭합니다.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/config-windows-multiple-ip.html)
**중요**  
IP 주소를 현재 IP 주소가 아닌 다른 값으로 설정할 경우 인스턴스와의 연결이 끊어집니다.  
![\[IP 주소\]](http://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/images/windows-ip-static.png)

인스턴스가 DHCP 사용을 고정 주소 지정으로 변환하는 몇 초 동안은 Windows 인스턴스와 RDP 간의 연결이 끊어집니다. 인스턴스가 전과 동일한 IP 주소 정보를 유지하지만, 지금은 이 정보가 고정 정보이며 DHCP에 의해 관리되지 않습니다.

## 2단계: 인스턴스에 대한 보조 프라이빗 IP 주소 구성
<a name="step2"></a>

Windows 인스턴스에서 고정 IP 주소 지정을 설정하고 나면 두 번째 프라이빗 IP 주소를 준비할 수 있습니다.

**보조 IP 주소를 구성하려면**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 [**인스턴스(Instances)**]를 선택하고 인스턴스를 선택합니다.

1. [**네트워킹(Networking)**]에서 보조 IP 주소를 기록합니다.

1.  인스턴스에 연결합니다.

1. Windows 인스턴스에서 **시작**, **제어판**을 선택합니다.

1. **네트워크 및 인터넷**, **네트워크 및 공유 센터**를 선택합니다.

1. 네트워크 인터페이스(로컬 영역 연결 또는 이더넷)를 선택한 다음, **속성**을 선택합니다.

1. **로컬 영역 연결 속성** 페이지에서 **인터넷 프로토콜 버전 4(TCP/IPv4)**, **속성**, **고급**을 선택합니다.

1. [**추가**]를 선택합니다.

1. **TCP/IP 주소** 대화 상자의 **IP 주소**에 보조 프라이빗 IP 주소를 입력합니다. **서브넷 마스크** 필드에 [1단계: 인스턴스에서 고정 IP 주소 지정 구성](#step1)의 주 프라이빗 IP 주소로 입력한 것과 동일한 서브넷 마스크를 입력하고 **추가**를 선택합니다.  
![\[TCP/IP 주소 대화 상자\]](http://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/images/windows-ip-add.png)

1. IP 주소 설정을 확인하고 **확인**을 선택합니다.  
![\[IP 설정 탭\]](http://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/images/windows-ip-advanced-tcpip.png)

1. **확인**, **닫기**를 선택합니다.

1. 보조 IP 주소가 운영 체제에 추가되었는지 확인하려면 PowerShell에서 `ipconfig /all` 명령을 실행합니다. 출력은 다음과 같을 것입니다.

   ```
   Ethernet adapter Ethernet 4:
   
      Connection-specific DNS Suffix  . :
      Description . . . . . . . . . . . : Amazon Elastic Network Adapter #2
      Physical Address. . . . . . . . . : 02-9C-3B-FC-8E-67
      DHCP Enabled. . . . . . . . . . . : No
      Autoconfiguration Enabled . . . . : Yes
      Link-local IPv6 Address . . . . . : fe80::f4d1:a773:5afa:cd1%7(Preferred)
      IPv4 Address. . . . . . . . . . . : 10.200.0.128(Preferred)
      Subnet Mask . . . . . . . . . . . : 255.255.255.0
      IPv4 Address. . . . . . . . . . . : 10.200.0.129(Preferred)
      Subnet Mask . . . . . . . . . . . : 255.255.255.0
      Default Gateway . . . . . . . . . : 10.200.0.1
      DHCPv6 IAID . . . . . . . . . . . : 151166011
      DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-2D-67-AC-FC-12-34-9A-BE-A5-E7
      DNS Servers . . . . . . . . . . . : 10.200.0.2
      NetBIOS over Tcpip. . . . . . . . : Enabled
   ```

## 3단계: 보조 프라이빗 IP 주소를 사용하도록 애플리케이션 구성
<a name="step3"></a>

부 프라이빗 IP 주소를 사용하도록 애플리케이션을 구성할 수 있습니다. 예를 들어, 인스턴스에서 IIS의 웹 사이트를 실행 중인 경우 부 프라이빗 IP 주소를 사용하도록 IIS를 구성할 수 있습니다.

**부 프라이빗 IP 주소를 사용하도록 IIS를 구성하려면**

1.  인스턴스에 연결합니다.

1. IIS(인터넷 정보 서비스) 관리자를 엽니다.

1. **연결** 창에서 **사이트**를 확장합니다.

1. 웹 사이트에 대한 컨텍스트 메뉴를 열고(마우스 오른쪽 버튼 클릭) **바인딩 편집**을 선택합니다.

1. **사이트 바인딩** 대화 상자의 **유형**에서 **http**, **편집**을 선택합니다.

1. **사이트 바인딩 편집** 대화 상자의 **IP 주소**에서 보조 프라이빗 IP 주소를 선택합니다. 기본적으로 각 웹 사이트는 모든 IP 주소의 HTTP 요청을 허용합니다.  
![\[IP 주소\]](http://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/images/windows-ip-iis-site-binding.png)

1. **확인**, **닫기**를 선택합니다.