TL;DR

  • 셀프 호스팅에 필요한 안정적인 도메인, 유효한 TLS 인증서, DDNS 독립성을 저렴하게 확보하고 CGNAT 환경에서도 서비스를 공개하려면 숫자형 .xyz 도메인과 Cloudflare Tunnel을 조합하는 방식이 적합함.
  • .xyz의 숫자형 1.111B 클래스는 6~9자리 숫자 도메인을 연간 US$0.99에 등록·갱신·이전할 수 있는 선택지임.
  • 11억 1,100만 개 조합으로 사용 가능한 이름을 찾기 쉽고, 숫자 도메인은 브랜드와 겹치거나 상표 분쟁이 발생할 위험이 낮음.
  • 와일드카드 DNS와 DNS-01 인증 방식을 사용하면 하나의 도메인으로 무제한 하위 도메인과 와일드카드 인증서를 운용할 수 있음.
  • 숫자형 도메인은 보기 좋거나 기억하기 어렵고 저가 TLD의 스팸·피싱 평판 문제가 있을 수 있지만, 개인 인프라와 데모에는 적합함.

문제

  • Grafana, 앱, API 등을 셀프 호스팅하려면 IP 주소를 가리키는 안정적인 이름, 유효한 전송 계층 보안(TLS) 인증서, 변경되거나 사라질 수 있는 무료 동적 DNS(DDNS) 하위 도메인에 의존하지 않는 환경이 필요함.
  • Let's Encrypt는 IP 주소용 인증서를 발급하지 않으므로 이 세 가지 문제를 자체 도메인 하나로 해결할 수 있으며, 남는 문제는 도메인 이름의 비용과 가용성임.
  • 여기에 집에서 호스팅하는 경우 인터넷 서비스 제공업체(ISP)가 일반적으로 공인 IP 주소를 제공하지 않고 여러 고객이 공유하는 IP 주소를 사용하는 통신사급 네트워크 주소 변환(CGNAT) 뒤에 두는 문제가 추가됨.
  • CGNAT 환경에서는 포트 포워딩을 전달할 대상이 없으므로 포트 포워딩 자체가 작동하지 않음.
  • 자체 도메인과 아웃바운드 터널을 함께 사용하면 네 가지 문제를 모두 해결할 수 있음.

1.111B 클래스란

  • 2017년 .xyz 레지스트리는 6~9자리 숫자로 된 모든 .xyz 도메인 블록을 공개했으며, 범위는 000000.xyz부터 999999999.xyz까지임.
  • 조합 수는 11억 1,100만 개이며 등록·갱신·이전 비용은 ICANN 수수료를 포함해 영구적으로 연간 US$0.99임.
  • 갱신 비용은 최초 등록 비용과 동일함.

추천하는 이유

  • 매우 낮은 비용: 연간 약 US$1이며 영구적으로 같은 가격이라 갱신 비용의 예측이 쉬움.
  • 높은 가용성: 11억 1,100만 개 조합이 있어 경쟁 없이 사용 가능한 도메인을 찾기 쉬움.
  • 상표 위험 없음: 숫자는 어떤 브랜드와도 충돌하지 않으며 도메인에 대한 분쟁 가능성도 낮음.
  • 브랜드가 아닌 기능 중심: 셀프 호스팅에는 멋지거나 기억하기 쉬운 이름보다 DNS가 제대로 해석되는 이름이 중요함.
  • 와일드카드와 하위 도메인: 와일드카드 레코드 하나로 단일 도메인에 무제한 하위 도메인을 연결할 수 있음.
  • 무료 Let's Encrypt 인증서: DNS-01 인증을 사용해 와일드카드 인증서(*.12345678.xyz)를 발급받으면 하나의 인증서로 모든 하위 도메인을 다룰 수 있음.
  • 독립성: 자체 도메인을 사용하므로 서비스를 종료할 수 있는 제삼자 DDNS에 의존하지 않음.

사용 방법

  • 숫자형 도메인(예: 12345678.xyz)을 루트 도메인으로 사용하고, 무료 Cloudflare DNS에 와일드카드 레코드를 설정함.
  • 집에서 호스팅할 때 핵심은 Cloudflare Tunnel이며, cloudflared 데몬을 통해 Cloudflare로 아웃바운드 터널을 연결함.
  • 이 방식은 공인 IP 주소나 라우터 포트 개방 없이 서비스를 호스팅할 수 있음.
  • 각 서비스에는 app., api., grafana.와 같은 하위 도메인을 할당함.

단점

  • 보기 좋지 않고 기억하기 어려움. 셀프 호스팅에서는 상관없지만 브랜드 용도에는 적합하지 않음.
  • .xyz를 포함한 저가 최상위 도메인(TLD)은 스팸·피싱 평판이 일부 따라붙으며, 일부 기업 필터가 경계할 수 있음. 개인 용도에는 문제가 되지 않지만 이런 일이 발생할 수 있음.
  • 제삼자 대상의 '진지한' 프로덕션 서비스에는 적합하지 않음. 은행은 신뢰하지 않을 수 있지만, 자체 인프라와 데모에는 잘 맞음.