구글 블로거 맞춤 도메인 CNAME 미표시 버그: TXT 레코드 캐싱 문제

구글 블로거(Blogger)에 맞춤 도메인을 연결할 때 CNAME 레코드 안내가 표시되지 않는 경우가 종종 있습니다. 도메인 등록업체나 네임서버가 지정된 곳에서 CNAME 레코드를 설정하지 않으면 개인 도메인이 블로그스팟에 정상적으로 연결이 되지 않습니다.

이 문제는 구글 서치 콘솔에 도메인 속성을 추가하면서 TXT 레코드로 소유권을 인증한 사용자에게서 흔히 발생합니다. TXT 레코드를 삭제한 후에 다시 다시 시도하면 문제가 해결되어야 하지만, 실제로는 곧바로 해결이 되지 않습니다. TXT 레코드를 삭제해도 구글이 인증 토큰을 즉시 재확인하지 않고 주기적으로 체크하여 캐싱된 상태를 유지하기 때문에 이 문제가 발생합니다.

구글 블로거 맞춤 도메인 CNAME 미표시 버그: TXT 레코드 캐싱 문제

구글 블로거(Blogger)에 맞춤 도메인 추가 시 CNAME 레코드 안내가 표시되지 않는 문제

티스토리가 제재가 심해지고 자체 광고 도입, 구글 애드센스의 앵커 광고 및 모바일 전면 광고 등을 제한하면서 애드센스 수익이 크게 하락하는 현상이 발생했습니다. 이 때문에 티스토리에서 블로그스팟이나 워드프레스로 이사하는 사용자들이 늘어나고 있습니다. 티스토리 게시글들을 유지한 상태로 이사하려는 경우 워드프레스를 선택할 수 있습니다.

구글 블로그스팟에 개인 도메인(2차 도메인)을 연결하기 위해 맞춤 도메인을 입력하면 CNAME 레코드 경고가 표시되어야 합니다.

구글 블로거 맞춤 도메인 CNAME 레코드 경고

위와 같은 팝업이 표시되면 지침에 따라 CNAME 레코드를 지정하면 개인 도메인이 블로그스팟에 연결됩니다. 기본 도메인을 연결하는 경우 상기 2개의 CNAME 레코드 외에 4개의 A 레코드를 추가로 설정해야 합니다. CNAME 레코드 안내 팝업이 상기와 같으면 다음과 같이 DNS 레코드를 설정할 수 있습니다. 가비아 등 일부 도메인 등록업체에서는 CNAME 레코드 값에 대하여 끝에 점(.)을 붙여야 합니다. 예: www → ghs.google.com. (끝에 점 추가)

www → ghs.google.com (CNAME)
2li4aqp2senr → gv-myzvsr3buq4q5v.dv.googlehosted.com (CNAME)
@ → 216.239.32.21 (A Record)
@ → 216.239.34.21 (A Record)
@ → 216.239.36.21 (A Record)
@ → 216.239.38.21 (A Record)

위의 그림에서 가장 중요한 DNS가 y7puije4nsiz로 시작하는 CNAME 레코드인데요. 구글 계정과 도메인 이름에 따라 고유한 값입니다.

상황CNAME 유지 여부
같은 계정, 같은 도메인✅ 유지
다른 계정, 같은 도메인❌ 새 CNAME 발급

이 레코드는 구글 서치 콘솔에서 사이트 소유권 확인에도 사용됩니다. 문제는 구글 서치 콘솔에서 도메인 속성을 추가하면서 TXT 레코드를 설정한 경우 블로그스팟에 개인 도메인을 추가할 때 CNAME 레코드 안내 팝업이 표시되지 않는다는 점입니다.

CNAME 레코드 경고가 표시되지 않더라도 이미 CNAME 레코드가 설정된 경우에는 곧바로 도메인이 블로그스팟에 연결됩니다. 하지만 이 사이트 소유권 확인을 위한 CNAME 레코드가 지정되어 있지 않은 상태인 경우에는 도메인이 블로그스팟에 올바르게 연결이 안 되고, 도메인 이름을 입력하여 접속하면 404 오류가 발생합니다.

이 문제가 발생하면 구글 서치 콘솔에서 '소유권 인증 세부정보'를 확인하여 어떤 방식으로 사이트 소유권이 인증되었는지 확인할 수 있습니다.

소유권 인증 세부정보 확인하기

구글 검색 콘솔에서 해당 도메인의 소유권 인증 세부정보를 확인할 수 있습니다. 도메인 속성이 추가되어 있다면, 해당 속성으로 이동한 후에 설정 » 사용자 및 권한을 클릭합니다.

구글 서치 콘솔

상기와 같은 화면이 표시되면 사용자 및 권한을 클릭합니다. 그러면 아래와 같이 "사용자 이름(나)"이 표시될 것입니다. 맨 오른쪽에 있는 점 세 개로 된 아이콘을 클릭하여 '소유권 인증 세부정보'를 누릅니다.

소유권 인증 세부정보 확인

기존에 사용한 소유권 인증 확인 방법이 표시됩니다.

블로그스팟에서 맞춤 도메인 연결 시 CNAME 레코드 설정 경고가 표시되지 않는 경우

TXT 레코드로 도메인 소유권 확인을 한 경우에는 google-site-verification=...이 표시될 것입니다.

소유권 인증 세부정보

TXT 레코드를 삭제해도 CNAME 레코드가 표시가 안 되는 이유

사이트 소유권 인증을 위한 TXT 레코드가 설정된 경우 구글 블로그에 개인 도메인을 추가할 때 CNAME 레코드가 표시되지 않는 버그가 있습니다. TXT 레코드로 이미 소유권이 인증되었기 때문에 동일한 기능을 하는 CNAME 레코드를 표시하지 않는 것 같습니다.

이 경우 TXT 레코드를 삭제하면 이론상 서너 시간에서 48시간 이후에 TXT 레코드가 완전히 삭제되므로 다시 맞춤 도메인을 추가하거나 구글 서치 콘솔에서 도메인 속성을 추가하면 다시 사이트 인증을 위한 DNS 레코드 정보를 표시해야 합니다.

하지만 실제로 해보면 CNAME 레코드 안내 팝업이 표시되지 않고 곧바로 맞춤 도메인이 추가되고, 구글 서치 콘솔에서도 TXT 레코드가 설정되어 있지 않은 상태에서도 도메인 속성을 제거한 후에 다시 도메인 속성을 추가하면 소유권 확인 과정 없이 추가됩니다.

이 문제를 검색하다가 단서가 되는 구글 커뮤니티 글을 하나 발견했습니다. remove google verification 구글 커뮤니티 게시글에 올라온 구글 전문가(Diamond Product Expert)의 답변인데요.

Google은 인증 토큰의 존재 여부를 실시간으로 확인하지 않습니다. 즉, 누군가 Search Console에 접속할 때마다 DNS를 즉시 조회하는 것이 아니라, 구글이 자체적으로 정해진 주기에 따라 주기적으로만 인증 토큰을 재확인합니다. 따라서 TXT 레코드를 삭제했더라도 구글이 다음번 주기적 확인을 수행하기 전까지는 인증이 유효한 상태로 캐싱되어 유지됩니다.

구글 사이트 소유권 인증 TXT 레코드가 즉시 삭제되지 않는 이유

구글 전문가의 답변을 번역하면 다음과 같습니다.

약간의 지연이 발생할 수 있습니다.
DNS 레코드 자체가 도메인의 TTL 설정에 따라 캐싱될 수 있습니다.
또한 구글은 인증 토큰을 사실상 '캐싱'하는 방식으로 처리합니다. 즉, 인증 토큰의 존재 여부를 실시간으로 확인하는 것이 아니라 주기적으로만 체크합니다. 따라서 구글이 다시 확인하여 토큰이 사라진 것을 감지하기 전까지는 해당 속성이 인증된 상태로 유지될 수 있습니다.

서버 리소스 절약, DNS 인프라 부하 분산, 그리고 인증 안정성 확보 등 여러 가지 이유로 구글이 도메인의 DNS TXT 레코드를 실시간으로 확인하지 않고 일정 기간 텀을 주고 주기적으로 확인하는 것이 아닌가 추정됩니다.

CNAME 레코드가 표시되지 않아서 도메인을 연결할 수 없는 경우 대처 방법

구글 블로그에 맞춤 도메인을 연결할 때 CNAME 레코드 정보가 표시되지 않아서 도메인을 연결할 수 없는 경우 몇 가지 방법을 고려할 수 있을 것 같습니다. TXT 레코드를 삭제한 후에...

  1. 구글이 TXT 레코드를 다시 체크할 때까지 기다립니다. 구글에서 사이트 소유권 확인을 위한 TXT 레코드를 어느 정도 기간을 주기로 체크하는지 알 수 없지만, 수 주 정도 기다리면 다시 TXT 레코드 기록이 사라지고 다시 TXT 레코드/CNAME 레코드로 사이트 소유권 확인을 할 수 있도록 요구할 것 같습니다.
  2. 당장 해당 도메인으로 사이트를 운영해야 한다면 티스토리나 워드프레스에 도메인을 연결하는 것을 생각할 수 있습니다.
  3. 블로그스팟을 곧바로 운영해야 한다면, 현실적인 방법으로 새로운 도메인을 다시 등록하는 것을 고려할 수 있습니다.
  4. 다른 방법으로 다른 구글 계정(예: 가족의 구글 계정)에서 블로그스팟을 개설하여 도메인을 연결합니다. 구글 계정이 달라지면 사이트 소유권 인증용으로 다른 CNAME 레코드가 제시됩니다.

중요하지 않은 도메인이라면 버리고 새 도메인을 등록하는 것이 마음이 편할 것입니다. 하지만 애드센스 승인을 받은 도메인이라면 버릴 수 없으므로 워드프레스나 티스토리 등 다른 블로그 플랫폼에 연결하는 것이 하나의 옵션일 수 있습니다.

마치며

구글 서치 콘솔에서 도메인 속성을 추가하면서 TXT 레코드를 설정한 경우 블로그스팟에 맞춤 도메인(개인 도메인)을 연결할 때 사이트 소유 확인용 CNAME 레코드가 표시가 안 되는 현상이 발생합니다. TXT 레코드를 삭제해도 구글에서 인증 토큰을 캐싱하여 주기적으로 체크하므로 일정 기간 도메인을 연결하지 못할 수 있습니다.

구글은 2019년에 '도메인 속성'을 도입했습니다. 구글 블로거는 체크해보니 그보다 10년 앞선 1999년에 시작되었네요(나무위키 참조). '도메인 속성'을 도입하면서 구글 블로거에 도메인을 연결할 때 설정해야 하는 CNAME 레코드와 충돌을 일으킬지에 대한 고민이 없었던 것 같습니다. 지금은 충분히 문제를 인식하고 있을 것 같지만, 구글은 Blogger에 그다지 관심이 없는 것이 아닌가 생각됩니다.

이런 문제가 발생한다면 아쉽지만 새로운 도메인을 등록하여 시작하거나 해당 도메인을 티스토리, 워드프레스 등에 연결하는 것을 고려할 수 있습니다.

참고

1개 댓글

댓글 남기기

  1. 맞아요, 저도 비슷한 경험을 한 적이 있는데, 네임서버 설정이 중요하군요. 덕분에 좀 더 명확하게 이해가 됐어요.

    답글