도메인에 이메일 연결하기 — 10분이면 끝난다
어떤 레코드를 어떤 순서로 넣는지, 그리고 어느 단계에서 막혔는지 알아내는 법.
어느 업체를 쓰든 설정은 같은 네 가지 개념이 다른 이름을 입고 나온 것이다. 한 번 보고 나면 이후의 모든 도메인은 몇 분이면 끝난다.
1단계 — 도메인 소유 증명
업체가 만들어준 토큰이 담긴 TXT 레코드를 넣는다. 당신의 DNS를 편집할 수 없는 사람은 이걸 넣을 수 없고, 그게 이 단계의 전부다. 네 단계 중 순전히 업체를 위해 존재하는 유일한 단계이기도 하다.
2단계 — 메일을 업체로 보내기 (MX)
MX 레코드는 "이 도메인의 메일은 여기로"라고 말한다. 이렇게 생겼다:
example.com. MX 10 mail.snailworkmail.com.
숫자는 우선순위다 — 낮을수록 먼저이고, 나머지는 예비다. 이게 조회되기 시작하는 순간부터 메일이 도착한다. 이전 중이라면 옛 업체가 수신을 멈추는 순간이기도 하니, 의도를 갖고 바꿔야 한다.
3단계 — 발신 권한 부여 (SPF와 DKIM)
SPF는 내 도메인 이름으로 보낼 수 있는 주체를 나열한 TXT 레코드다. DKIM은 업체가 내 발신 메일에 암호학적 서명을 붙일 수 있게 하는 CNAME 레코드 묶음이다. 이 둘이 있어야 지메일이 "당신에게서 왔다"는 주장을 믿는다:
example.com. TXT "v=spf1 include:amazonses.com ~all"
<token>._domainkey.example.com. CNAME <token>.dkim.amazonses.com.
도메인당 SPF 레코드는 하나뿐이다. v=spf1이 둘이면 합쳐지는
게 아니라 그대로 실패한다 — 이미 하나 있다면 새로 만들지 말고 그 안에
include:를 추가할 것.
4단계 — DMARC (느슨하게 시작한다)
_dmarc.example.com. TXT "v=DMARC1; p=none; rua=mailto:you@example.com"
p=none은 "거절하지 말고 관찰만"이라는 뜻이다. 여기서 시작해 몇 주 리포트를
읽고, 그다음에야 quarantine과 reject로 옮긴다.
reject부터 시작하는 게 자기 메일을 스스로 사라지게 만드는 방법이다.
어디서 막혔는지 알아내기
| 증상 | 대개의 원인 |
|---|---|
| 아무것도 안 온다 | MX가 아직 조회되지 않거나 옛 업체를 가리키는 중 |
| 수신은 되는데 발신이 막힌다 | DKIM이 아직 안 퍼졌다 — 최대 72시간 |
| 보낸 메일이 스팸함에 간다 | SPF 정렬 문제이거나, 평판이 없는 새 도메인 |
| 업체가 '레코드를 찾을 수 없다'고 한다 | 등록기관이 도메인을 두 번 붙였다 — example.com.example.com이 아닌지 확인 |
마지막 항목이 거의 모두를 잡는다. 많은 등록기관이 도메인을 자동으로 붙이기 때문에, 전체 이름을 입력하면 두 번 붙은 레코드가 만들어진다. 헷갈리면 내가 입력한 값이 아니라 실제로 조회되는 값을 볼 것.