컨텐츠로 건너뛰기

클라우드 플레어 API 활용 도메인 레코드 변경과 DDNS 설정

클라우드 플레어의 API를 활용하여 도메인 레코드를 변경하는 방법은 동적 DNS(DDNS) 설정에 유용합니다.
이 글에서는 클라우드 플레어의 API를 사용하여 A 레코드를 업데이트하는 절차와 새로운 A 레코드를 추가하는 방법을 단계별로 안내합니다.

1. API 키 및 이메일 획득

  • 클라우드 플레어 계정에서 API 키와 이메일 주소를 확인합니다.
  • API 키는 글로벌 API 키를 사용합니다. 테스트 후 즉시 변경하고 엄격한 권한 설정으로 토큰을 발급해 사용하세요.

2. 존 ID 찾기

  • 존(Zone) ID는 클라우드 플레어 대시보드의 ‘Overview’ 섹션에서 확인하거나, API를 통해 조회할 수 있습니다.
  • 다음은 존 ID를 조회하는 API 명령 예시입니다.
Terminal window
curl -X GET "https://api.cloudflare.com/client/v4/zones?name=[업데이트할 도메인]" \
-H "X-Auth-Email: [나의 이메일]" \
-H "X-Auth-Key: [나의 api key]" \
-H "Content-Type: application/json"

3. 기존 A 레코드의 ID 찾기 또는 새 A 레코드 추가

  • 존 ID를 사용하여 기존 A 레코드의 ID를 조회하거나, 새로운 A 레코드를 추가합니다.

(1) 기존 A 레코드 ID 조회 (GET)

  • 다음은 A 레코드 ID를 조회하는 API 명령 예시입니다.
Terminal window
curl -X GET "https://api.cloudflare.com/client/v4/zones/[업데이트할 도메인의 Zone ID]/dns_records?type=A&name=[업데이트할 도메인]" \
-H "X-Auth-Email: [나의 이메일]" \
-H "X-Auth-Key: [나의 api key]" \
-H "Content-Type: application/json"
  • 조회 결과에서 “id” 값을 확인합니다.
{ "result": { "id": "xxxxxxxxxxxxxxxxxxxxxxxxxxx" } }

(2) 새 A 레코드 추가 (POST)

Terminal window
curl -X POST "https://api.cloudflare.com/client/v4/zones/[존 ID]/dns_records" \
-H "X-Auth-Email: [나의 이메일]" \
-H "X-Auth-Key: [나의 api key]" \
-H "Content-Type: application/json" \
--data '{"type":"A","name":"[도메인 이름]","content":"[IP 주소]","ttl":1,"proxied":false}'

4. DNS 레코드 업데이트

  • 레코드 ID를 찾았다면, 해당 ID를 이용해 A 레코드를 업데이트합니다.

  • 다음은 A 레코드를 업데이트하는 API 명령 예시입니다.

Terminal window
curl -X PUT "https://api.cloudflare.com/client/v4/zones/[업데이트할 도메인의 Zone ID]/dns_records/[업데이트할 도메인의 레코드 ID]" \
-H "X-Auth-Email: [나의 이메일]" \
-H "X-Auth-Key: [나의 api key]" \
-H "Content-Type: application/json" \
--data '{"type":"A","name":"[업데이트할 도메인]","content":"[업데이트할 A레코드의 새 IP 주소]","ttl":1,"proxied":false}'

수고 많으셨습니다. 감사합니다.


Askfront.com (에스크프론트)

초보자도 편하게 질문할 수 있는 자유로운 포럼을 준비했어요! 💬
에스크프론트에서는 NavyStack 가이드뿐만 아니라, 궁금한 모든 질문을 환영합니다. 😊
검색해도 원하는 답을 찾지 못해 답답했던 경험 있으시죠?
🔍 그럴 땐 부담 없이 질문해 주세요!
함께 이야기하며 답을 찾아갈 수 있을 거예요. 🤝
제가 직접 답변드릴 수 있다면 언제든 도와드릴게요. 감사합니다! 🙏