

# 자습서: IPAM으로 ASN 가져오기
<a name="tutorials-byoasn"></a>

애플리케이션에서 파트너 또는 고객이 네트워크에 허용한 신뢰할 수 있는 IP 주소 및 Autonomous System Number(ASN)를 사용하는 경우 파트너나 고객이 허용 목록을 변경하지 않고도 AWS에서 이러한 애플리케이션을 실행할 수 있습니다.

Autonomous System Number(ASN)는 인터넷을 통해 네트워크 그룹을 식별하고 [Border Gateway Protocol](https://aws.amazon.com/what-is/border-gateway-protocol/)을 사용하여 동적으로 다른 네트워크와 라우팅 데이터를 교환할 수 있도록 하는 글로벌 고유 번호입니다. 예를 들어 인터넷 서비스 제공업체(ISP)는 ASN을 사용하여 네트워크 트래픽 소스를 식별합니다. 모든 조직이 자체 ASN을 구매하는 것은 아니지만, 구매하는 조직의 경우 ASN을 AWS로 가져올 수 있습니다.

기존 보유 자율 시스템 번호 가져오기(BYOASN)를 사용하면 AWS ASN 대신 자체 퍼블릭 ASN을 사용하여 AWS로 가져오는 IPv4 또는 IPv6 주소를 알릴 수 있습니다. BYOASN을 사용하면 IP 주소에서 발생하는 트래픽이 ASN 대신 ASN을 전달하므로 IP 주소 및 AWS ASN을 기반으로 나열된 트래픽을 허용하는 고객이나 파트너가 워크로드에 연결할 수 있습니다.

**중요**  
IPAM 홈 리전의 IPAM 관리자 계정을 사용하여 이 자습서를 완료하세요.
이 자습서에서는 IPAM으로 가져오려는 퍼블릭 ASN을 소유하고 있으며 이미 BYOIP CIDR을 AWS로 가져와 퍼블릭 범위의 풀에 프로비저닝했다고 가정합니다. 언제든지 IPAM에 ASN을 가져올 수 있지만, 이를 사용하려면 AWS 계정에 가져온 CIDR과 연결해야 합니다. 이 자습서에서는 그것을 이미 완료했다고 가정합니다. 자세한 내용은 [자습서: IPAM으로 IP 주소 가져오기](tutorials-byoip-ipam.md) 단원을 참조하세요.
지체 없이 자체 ASN 또는 AWS ASN을 알리도록 변경할 수 있지만 한 시간에 한 번만 AWS ASN에서 자체 ASN으로 변경할 수 있습니다.
BYOIP CIDR이 현재 알려지고 있는 경우 ASN과 연계하기 위해 광고에서 BYOIP CIDR을 철회할 필요가 없습니다.

## ASN에 대한 온보딩 사전 조건
<a name="tutorials-byoasn-prereqs"></a>

이 자습서를 완료하려면 다음이 필요합니다.
+ 퍼블릭 2바이트 또는 4바이트 ASN.
+ 이미 [자습서: IPAM으로 IP 주소 가져오기](tutorials-byoip-ipam.md)를 통해 AWS로 IP 주소 범위를 가져왔다면 IP 주소 CIDR 범위가 필요합니다. 프라이빗 키도 필요합니다. AWS로 IP 주소 CIDR 범위를 가져올 때 생성한 프라이빗 키를 사용하거나 *Amazon EC2 사용 설명서*의 [프라이빗 키 생성 및 X.509 인증서 생성](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/prepare-for-byoip.html#byoip-certificate)에 설명된 대로 새 프라이빗 키를 생성할 수 있습니다.
+ AWS에 [자습서: IPAM으로 IP 주소 가져오기](tutorials-byoip-ipam.md)(으)로 IPv4 또는 IPv6 주소 범위를 가져오는 경우 [X.509 인증서를 생성](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-byoip.html#byoip-add-certificate)하고 [X.509 인증서를 RIR의 RDAP 레코드에 업로드](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-byoip.html#byoip-add-certificate)합니다. 생성한 동일한 인증서를 ASN용 RIR에 있는 RDAP 레코드에 업로드 해야 합니다. 인코딩된 부분 앞과 뒤에 `-----BEGIN CERTIFICATE-----` 및 `-----END CERTIFICATE-----` 문자열을 포함해야 합니다. 이 모든 내용은 하나의 긴 줄에 있어야 합니다. RDAP를 업데이트하는 절차는 RIR에 따라 다릅니다.
  + ARIN의 경우 [계정 관리자 포털](https://account.arin.net/public/secure/dashboard)을 통해 “공개 주석” 섹션에 인증서를 추가하세요. 인증서는 “Network Information” 개체를 위해 쓰이며 “Modify ASN” 옵션을 사용하여 ASN을 표시합니다. 조직의 주석 섹션에 추가하지 않습니다.
  + RIPE의 경우 ASN을 나타내는 “aut-num” 개체에 새 “descr” 필드로 인증서를 추가합니다. 인증서는 “내 리소스” 섹션에서 찾을 수 있습니다.

    [RIPE 데이터베이스 포털](https://apps.db.ripe.net/db-web-ui/myresources/overview) 참조. 조직의 주석 섹션이나 “aut-num” 개체의 “비고” 필드에 추가하지 마세요.
  + APNIC의 경우 이메일을 통해 인증서를 [helpdesk@apnic.net](mailto:helpdesk@apnic.net)로 전송하여 ASN의 “설명” 필드에 수동으로 추가합니다. ASN의 APNIC 공인 연락처를 사용하여 이메일을 전송합니다.
+ IP 주소 범위를 IPAM으로 가져올 때 ROA를 생성하여 IPAM으로 가져오는 IP 주소 공간을 제어하는지 확인합니다. 해당 ROA 외에도 IPAM으로 가져오는 ASN을 포함하는 RIR에 두 번째 ROA가 있어야 합니다. RIR에 ASN에 대한 이 두 번째 ROA가 없는 경우, RIR에서 [3. ROA 개체 생성](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/prepare-for-byoip.html#byoip-create-roa-object)을 완료합니다. 다른 단계는 무시합니다.

## 자습서 단계
<a name="tutorials-byoasn-process"></a>

AWS 콘솔 또는 AWS CLI를 사용하여 아래 단계를 완료하세요.

------
#### [ AWS Management Console ]

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

1. 왼쪽 탐색 창에서 **IPAM**을 선택합니다.

1. IPAM을 선택합니다.

1. **BYOASN** 탭을 선택하고 **BYOASN 프로비저닝**을 선택합니다.

1. **ASN**을 입력합니다. 결과적으로 **메시지** 필드는 다음 단계에서 서명해야 할 메시지로 자동으로 채워집니다.
   + 메시지 형식은 다음과 같습니다. 여기서 ACCOUNT는 AWS 계정 번호이고, ASN은 IPAM으로 가져오는 ASN이며, YYYYMMDD는 메시지 만료 날짜(기본값은 다음 달 말일)입니다. 예시

     ```
     text_message="1|aws|ACCOUNT|ASN|YYYYMMDD|SHA256|RSAPSS"
     ```

1. 원하는 경우 메시지를 복사하고 만료 날짜를 원하는 값으로 바꾸세요.

1. 프라이빗 키를 사용하여 메시지에 서명합니다. 예시

   ```
   signed_message=$( echo -n $text_message | openssl dgst -sha256 -sigopt rsa_padding_mode:pss -sigopt rsa_pss_saltlen:-1 -sign private-key.pem -keyform PEM | openssl base64 | tr -- '+=/' '-_~' | tr -d "\n")
   ```

1. **서명**에 서명을 입력합니다.

1. (선택 사항) 다른 ASN을 프로비저닝하려면 **다른 ASN 프로비저닝**을 선택합니다. 최대 5개의 ASN을 프로비저닝할 수 있습니다. 이 할당량을 늘리려면 [IPAM의 할당량](quotas-ipam.md)를 참조하세요.

1. **프로비저닝**을 선택합니다.

1. **BYOASN** 탭에서 프로비저닝 프로세스를 확인합니다. **상태**가 *프로비저닝 보류 중*에서 *프로비저닝됨*으로 변경될 때까지 기다리세요. *프로비저닝 실패* 상태의 BYOASN은 7일 후에 자동으로 제거됩니다. ASN이 성공적으로 프로비저닝되면 이를 BYOIP CIDR에 연결할 수 있습니다.

1. 왼쪽 탐색 창에서 **풀**을 선택합니다.

1. 퍼블릭 범위를 선택합니다. 범위에 대한 자세한 내용은 [IPAM 작동 방식](how-it-works-ipam.md) 섹션을 참조하세요.

1. BYOIP CIDR이 프로비저닝된 리전 풀을 선택합니다. 풀에는 **서비스**가 **EC2**로 설정되어 있어야 하며 로케일이 선택되어 있어야 합니다.

1. **CIDR 탭**을 선택하고 BYOIP CIDR을 선택합니다.

1. **작업** > **BYOSAN 연결 관리**를 선택합니다.

1. **연결된 BYOASN**에서 AWS로 가져온 ASN을 선택합니다. ASN이 여러 개 있는 경우 여러 ASN을 BYOIP CIDR에 연결할 수 있습니다. IPAM에 가져올 수 있는 만큼 많은 ASN을 연결할 수 있습니다. 참고로 기본적으로 최대 5개의 ASN을 IPAM으로 가져올 수 있습니다. 자세한 내용은 [IPAM의 할당량](quotas-ipam.md) 단원을 참조하세요.

1. **연결**을 선택합니다.

1. ASN 연결이 완료될 때까지 기다립니다. ASN이 BYOIP CIDR에 성공적으로 연결되면 BYOIP CIDR을 다시 알릴 수 있습니다.

1. 풀 **CIDR** 탭을 선택합니다.

1. BYOIP CIDR을 선택하고 **작업(Actions)** > **알리기(Advertise)**를 선택합니다. 결과적으로 Amazon ASN 및 IPAM으로 가져온 모든 ASN 등 ASN 옵션이 표시됩니다.

1. IPAM으로 가져온 ASN을 선택하고 **CIDR 알리기**를 선택합니다. 결과적으로 BYOIP CIDR이 알려지고 **알림(Advertising)** 열의 값이 철회됨(Withdrawn)에서 알려짐(Advertised)으로 변경됩니다. **자율 시스템 번호** 열에는 CIDR과 연결된 ASN이 표시됩니다.

1. (선택 사항) ASN 연결을 Amazon ASN으로 다시 변경하려면 BYOIP CIDR을 선택하고 **작업** > **알리기**를 다시 선택합니다. 이번에는 Amazon ASN을 선택합니다. 언제든지 Amazon ASN으로 다시 스왑할 수 있지만 사용자 지정 ASN으로 1시간에 한 번만 변경할 수 있습니다.

튜토리얼이 완료되었습니다.

**정리**

1. BYOIP CIDR에서 AS을 분리
   + 알림에서 BYOIP CIDR을 철회하려면 퍼블릭 범위 풀에서 BYOIP CIDR을 선택하고 **작업** > **알림 철회**를 선택합니다.
   + CIDR에서 ASN을 분리하려면 **작업** > **BYOASN 연결 관리**를 선택합니다.

1. ASN 프로비저닝 해제
   + ASN을 프로비저닝 해제하려면 BYOASN 탭에서 ASN을 선택하고 **ASN 프로비저닝 해제**를 선택합니다. 결과적으로 ASN이 프로비저닝 해제됩니다. *프로비저닝 해제* 상태의 BYOASN은 7일 후에 자동으로 제거됩니다.

정리가 완료되었습니다.

------
#### [ Command line ]

1. ASN과 권한 부여 메시지를 포함하여 ASN을 프로비저닝합니다. 서명은 프라이빗 키로 서명된 메시지입니다.

   ```
   aws ec2 provision-ipam-byoasn --ipam-id $ipam_id --asn 12345 --asn-authorization-context Message="$text_message",Signature="$signed_message"
   ```

1. 프로비저닝 프로세스를 추적할 수 있도록 ASN을 설명하세요. 요청이 성공하면 몇 분 후에 *ProvisionStatus*가 *프로비저닝됨*으로 설정된 것을 확인할 수 있습니다.

   ```
   aws ec2 describe-ipam-byoasn 
   ```

1. ASN을 BYOIP CIDR과 연결합니다. 알리려는 모든 사용자 지정 ASN은 먼저 CIDR에 연결되어야 합니다.

   ```
   aws ec2 associate-ipam-byoasn --asn 12345 --cidr xxx.xxx.xxx.xxx/n
   ```

1. 연결 프로세스를 추적하려면 CIDR을 설명하세요.

   ```
   aws ec2 describe-byoip-cidrs --max-results 10
   ```

1. ASN을 통해 CIDR을 알립니다. CIDR이 이미 알려진 경우, 원본 ASN이 Amazon의 ASN에서 사용자의 ASN으로 교체됩니다.

   ```
   aws ec2 advertise-byoip-cidr --asn 12345 --cidr xxx.xxx.xxx.xxx/n
   ```

1. ASN 상태가 *연결됨*에서 *알려짐*으로 변경되는지 확인하려면 CIDR을 설명하세요.

   ```
   aws ec2 describe-byoip-cidrs --max-results 10
   ```

튜토리얼이 완료되었습니다.

**정리**

1. 다음 중 하나를 수행합니다.
   + ASN 알림만 철회하고 다시 CIDR 알림을 유지하면서 Amazon ASN을 다시 사용하려면 asn 파라미터에 대한 특수 AWS 값을 사용하여 advertise-byoip-cidr을 호출해야 합니다. 언제든지 Amazon ASN으로 다시 스왑할 수 있지만 사용자 지정 ASN으로 1시간에 한 번만 변경할 수 있습니다.

     ```
     aws ec2 advertise-byoip-cidr --asn AWS --cidr xxx.xxx.xxx.xxx/n 
     ```
   + CIDR과 ASN 알림을 동시에 철회하려면 withdraw-byoip-cidr을 호출할 수 있습니다.

     ```
     aws ec2 withdraw-byoip-cidr --cidr xxx.xxx.xxx.xxx/n
     ```

1. ASN을 정리하려면 먼저 BYOIP CIDR에서 ASN을 분리해야 합니다.

   ```
   aws ec2 disassociate-ipam-byoasn --asn 12345 --cidr xxx.xxx.xxx.xxx/n
   ```

1. ASN이 연결된 모든 BYOIP CIDR에서 ASN의 연결이 해제되면 해당 ASN을 프로비저닝 해제할 수 있습니다.

   ```
   aws ec2 deprovision-ipam-byoasn --ipam-id $ipam_id --asn 12345 
   ```

1. 또한 모든 ASN 연결이 제거되면 BYOIP CIDR을 프로비저닝 해제할 수 있습니다.

   ```
   aws ec2 deprovision-ipam-pool-cidr --ipam-pool-id ipam-pool-1234567890abcdef0 --cidr xxx.xxx.xxx.xxx/n
   ```

1. 프로비저닝 해제를 확인합니다.

   ```
   aws ec2 get-ipam-pool-cidrs --ipam-pool-id ipam-pool-1234567890abcdef0
   ```

정리가 완료되었습니다.

------