VPC의 일반적인 BYOIP 구성 오류를 해결하려면 어떻게 해야 하나요?

5분 분량
0

Amazon Virtual Private Cloud(VPC)에 사용할 고유 IP 주소 가져오기(BYOIP)를 구성하고 싶습니다.

간략한 설명

다음은 VPC에서 BYOIP를 구성할 때 발생하는 일반적인 오류입니다.

  • 경로 출발지 인증(ROA)이 유효하지 않거나 CIDR 및 Autonomous System Numbers(ASN)에 대해 찾을 수 없습니다.

  • WHOIS 비고에서 X509 인증서를 찾을 수 없습니다.

  • IP 범위가 관련 인터넷 레지스트리에서 허용되는 할당 유형이 아닙니다.

  • 지역 인터넷 레지스트리(RIR) 레코드에서 X509 인증서로 CidrAuthorizationContext 서명을 확인할 수 없습니다.

  • IP 주소가 프로비저닝 보류 중 상태에 있습니다.

해결 방법

오류: The ROA isn't valid or isn't found for the CIDR and Amazon ASNs

참고: AWS Command Line Interface(AWS CLI) 명령을 실행할 때 오류가 발생하는 경우, 최신 AWS CLI 버전을 사용하고 있는지 확인합니다.

ROA를 생성하여 아마존 ASN 16509 및 14618이 주소 범위를 광고하도록 승인합니다. ROA를 통해 ASN을 Amazon에서 사용할 수 있으려면 최대 24시간이 걸립니다.

ROA 생성 및 ASN 매핑을 확인하려면 RIPE의 rpki-validator를 확인합니다. 브라우저 또는 명령줄의 curl을 사용하여 확인을 마칩니다.

브라우저 예시

https://rpki-validator.ripe.net/json?select-prefix=X.X.X.X/{prefix-length}

**참고:**이전 예시에서 **X.X.X.X/{prefix-length}**를 주소 범위로 바꾸세요.

명령줄 예시

curl https://rpki-validator.ripe.net/json?select-prefix=X.X.X.X/{prefix-length}

**참고:**이전 예시에서 **X.X.X.X/{prefix-length}**를 주소 범위로 바꾸세요.

유효한 출력의 예시:

{
  "metadata": {
  "generated": 1685008213,
    "generatedTime": "2023-05-25T09:50:13Z"
  },
  "roas": [
    { "asn": "AS14618", "prefix": "X.X.X.X/{prefix-length}", "maxLength": X, "ta": "arin" },
    { "asn": "AS16509", "prefix": "X.X.X.X/{prefix-length}", "maxLength": X, "ta": "arin" }
  ]
}

유효하지 않은 출력의 예시:

{
  "metadata": {
  "generated": 1685008305,
    "generatedTime": "2023-05-25T09:51:45Z"
  },
  "roas": [

  ]
}

이 오류를 방지하려면 다음 작업을 완료합니다.

  • ROA는 사용 기간 동안 두 ASN에 모두 유효해야 합니다. 또한 AWS로 가져오는 주소 범위에만 해당되어야 합니다. 자세한 내용은 고유 IP 주소 가져오기(BYOIP) 소개의 “IP 주소 범위 준비” 섹션을 참조합니다.
  • 다시 프로비저닝하기 전에 ROA를 생성한 후 24시간 동안 기다리세요.

오류: No X509 certificate could be found in the WHOIS remarks

이 오류에 대한 일반적인 원인은 다음과 같습니다.

  • RIR에 대한 RDAP 레코드에 인증서가 없습니다.
  • 인증서에 새 줄 문자가 있습니다.
  • 인증서가 유효하지 않습니다.
  • 유효한 키 쌍으로부터 인증서가 생성되지 않았습니다.

인증서를 정확하게 생성하고 업로드해야 합니다. 자세한 내용은 AWS 인증을 위한 키 페어 생성을 참조합니다.

이 오류를 해결하려면 업로드한 인증서가 유효한지 확인합니다. WHOIS를 사용하여 RIR의 네트워크 범위에 대한 레코드를 확인합니다.

ARIN의 경우:

whois -a <Public IP>

NetRange(네트워크 범위)에 대해 의견 섹션을 확인합니다. 주소 범위에 대한 공개 의견 섹션에 인증서를 추가합니다.

RIPE의 경우:

whois -r <Public IP>

WHOIS 디스플레이의 inetnum 객체(네트워크 범위)에 대한 descr 섹션을 확인합니다. 주소 범위의 desc 필드에 인증서를 추가합니다.

APNIC의 경우:

whois -A <Public IP>

WHOIS 디스플레이의 inetnum 객체(네트워크 범위)에 대한 의견 섹션을 확인합니다. 인증서가 주소 범위에 대한 의견 필드에 있는지 확인합니다.

검사 완료 후 다음 작업을 완료합니다.

  1. 인증서가 없는 경우 새 인증서를 생성합니다. 그런 다음 이 문서의 해결 방법 섹션에서 설명한 단계에 따라 업로드합니다.
    인증서가 있는 경우 새 줄이 없는지 확인합니다. 새 줄이 있다면 다음 예시와 같이 줄을 제거합니다.

    openssl req -new -x509 -key private.key -days 365 | tr -d "\n" > publickey.cer
  2. 인증서가 유효한지 확인합니다. 이를 위해 인증서 내용을 새 파일에 복사하고 다음 명령을 실행합니다.

    openssl x509 -in example.crt -text -noout

    인증서를 로드할 수 없음이라는 오류가 표시되는 경우 BEGIN CERTIFORM 뒤에 새 줄을 추가하고, END CERTIFICATE 앞에 새 줄을 하나 더 추가합니다.

  3. 위 항목 중 어느 것도 해당되지 않는다면 잘못된 키 쌍을 사용하여 인증서를 생성한 것입니다.

오류: The IP range isn't an acceptable allocation type in the associated internet registry

이 오류의 원인은 다음과 같습니다.

  • 주소 범위에 대한 RIR 할당 유형이 올바르지 않습니다.
  • 레지스트리를 지원하지 않습니다.

5개의 Regional Internet Registries(RIR): 즉 AFRINIC, ARIN, APNIC, LACNIC 및 RIPE가 있습니다. AWS는 ARIN, RIPE, APNIC 등록 접두사를 지원합니다.

RIR을 확인하려면 WHOIS를 사용합니다.

whois <public ip>

RIPE의 경우: 상태ALLOCATED PA, LEGACY 또는 ASSIGNED PI인지 확인합니다.

ARIN의 경우: NetTypeDirect Allocation 또는 Direct Assignment인지 확인합니다.

APNIC의 경우: 상태ALLOCATED PORTABLE 또는 ASSIGNED PORTABLE인지 확인합니다.

참고: 일부 의견에는 이 블록 내의 주소는 휴대할 수 없다는 내용이 표시될 수 있습니다. 이 의견은 RIR이 해당 주소 범위를 프로비저닝할 수 없다는 추가 확인입니다.

위 오류는 다음의 이유로 발생합니다.

  • 상태(RIPE 및 APNIC의 경우) 또는 NetType(ARIN의 경우)이 이전 섹션에 나열된 상태 중 어느 것에도 해당하지 않습니다.
  • 레지스트리를 지원하지 않습니다.

오류: CidrAuthorizationContext 서명은 RIR 레코드의 X509 인증서로 확인할 수 없습니다

주소 범위를 프로비저닝할 때 AWS는 API 호출에 대한 서명을 확인해야 합니다. AWS는 인증서에서 파생된 공개 키를 사용하여 aws ec2 provision-byoip-cidr API 호출에서 서명을 확인합니다. 이 오류는 서명을 암호로 확인하지 못했음을 나타냅니다.

오류의 원인은 다음과 같습니다.

  • 프로비저닝할 때 올바른 서명을 사용하고 있지 않습니다.
  • 잘못된 개인 키로 메시지에 서명했습니다.
  • RIR을 사용하여 RDAP 레코드에 잘못된 인증서를 업로드했습니다.

오류: Your IP address is stuck in the "pending-provision" state

공개적으로 광고할 수 있는 범위에 대한 프로비저닝 프로세스를 완료하는 데 최대 1주일이 소요됩니다. 다음 예시와 같이 describe-byoip-cidrs 명령을 사용하여 진행 상황을 모니터링할 수 있습니다.

aws ec2 describe-byoip-cidrs --max-results 5 --region us-east-1

상태가 failed-provision으로 변경되면 문제를 해결한 후 provision-byoip-cidr 명령을 다시 실행합니다.

자세한 내용은 AWS에서 공개 광고 주소 범위 프로비저닝을 참조합니다.

관련 정보

Amazon Elastic Compute Cloud(Amazon EC2)에 고유 IP 주소 가져오기(BYOIP)를 가져오기

나만의 IP 가져오기

AWS 공식
AWS 공식업데이트됨 일 년 전