이메일이 메일 서버를 찾는 과정
발신자
you@gmail.com
MX 조회
메일을 받는 곳은?
메일 서버
우선순위 10 먼저
받은편지함
전달됨
우선순위 값이 낮을수록 먼저 사용되고, 높은 값은 백업입니다
MX 레코드 설명: 이메일이 목적지를 찾는 방법
누군가 name@example.com으로 이메일을 보내면 발신 메일 서버는 example.com의 일반적인 A 레코드를 조회하지 않습니다. 완전히 다른 레코드 유형인 MX(Mail Exchange의 약자)를 질의합니다. MX 레코드는 해당 도메인의 메일을 받을 책임이 있는 서버의 호스트 이름을 가리키며, 이는 웹사이트가 있는 주소와 전혀 다른 경우가 매우 많습니다.
우선순위: 사람들이 의외로 헷갈리는 부분
한 도메인에는 각각 숫자 우선순위 값을 가진 MX 레코드가 여러 개 있을 수 있습니다. 숫자가 낮을수록 우선합니다. 발신 서버는 우선순위 값이 가장 낮은(가장 선호되는) 메일 서버를 먼저 시도하고, 그 서버에 연결할 수 없을 때만 더 높은 값으로 넘어갑니다. 덕분에 이중화된 메일 수신이 가능해집니다. 더 높은 우선순위 값을 가진 백업 메일 서버가 기본 서버가 중단되었을 때 메일을 받을 준비를 하고 있는 것입니다.
| 우선순위 | 대상 | 동작 |
|---|---|---|
| 10 | mail1.example.com | 가장 먼저 시도됨. 가장 낮은 숫자, 가장 선호됨 |
| 20 | mail2.example.com | 백업. 우선순위 10에 연결할 수 없을 때만 시도됨 |
| 30 | mail3.example.com | 두 번째 백업. 위의 둘 다 실패했을 때만 시도됨 |
- MX 레코드의 대상은 그 자체로 A 또는 AAAA 레코드로 확인되어야 하며, IP 주소를 직접 가리킬 수 없습니다.
- MX 레코드가 전혀 없는 도메인은 웹사이트가 잘 동작하더라도 대개 이메일을 받을 수 없습니다. 두 기능은 완전히 별개의 DNS 조회로 처리됩니다.
- 우선순위 값이 같은 MX 레코드 두 개는 동시에 유효합니다. 발신 서버는 둘 중 아무거나 고를 수 있으며, 이를 의도적으로 단순한 부하 분산 방식으로 쓰기도 합니다.
"이메일이 되느냐 안 되느냐"를 넘어 중요한 이유
MX 레코드는 도메인의 전체 이메일 설정을 검증하는 출발점이기도 합니다. SPF, DKIM, DMARC 레코드는 모두 해당 도메인에서 왔다고 주장하는 메일이 실제로 허가된 것임을 증명하기 위해 존재하며, 이를 검증하기 전에 MX 설정을 확인하는 것이 보통 첫 단계입니다. 새 이메일 제공업체로의 이전은 본질적으로 MX 레코드(그리고 보조 레코드)에 대한 DNS 변경이므로, 다른 모든 DNS 업데이트에 적용되는 전파 지연이라는 주의점을 그대로 물려받습니다.
의도적으로 이메일을 보내지 않는 도메인
모든 도메인이 메일을 받기를 원하는 것은 아니며, 이를 정의하지 않고 두는 것 자체가 작은 보안 허점입니다. 명시적인 신호가 없으면 일부 메일 시스템은 여전히 전달을 시도하거나 누락된 설정에 대해 임의로 가정하기 때문입니다. RFC 7505는 이를 위해 "null MX"를 정의합니다. 우선순위 0으로 "."(루트, 즉 어디도 아님을 의미)을 가리키는 MX 레코드 하나를 두어 "이 도메인은 메일을 받지 않으니 시도할 필요 없음"이라고 명시적으로 선언하는 방식입니다. 마케팅용 리디렉션 도메인이나 내부 전용 서비스 도메인처럼 메일을 보내거나 받을 일이 전혀 없는 모든 도메인에 설정해 둘 만한 작고 쉬운 조치입니다.
피해야 할 흔한 실수
의외로 자주 발생하는 설정 오류는 MX 레코드가 IP 주소를 직접 가리키거나, 실제 A/AAAA 레코드 없이 CNAME만 있는 호스트 이름을 가리키는 것입니다. 둘 다 레코드 유형 자체의 규칙에 어긋나며, 사양을 엄격하게 따르는 메일 시스템은 의도를 추측하지 않고 전달을 아예 거부합니다. 웹사이트는 완벽하게 동작하는데 이메일 전달이 느린 정도가 아니라 완전히 실패한다면, 모든 MX 대상이 CNAME도 아니고 실수로 입력한 IP도 아닌 일반 A 또는 AAAA 레코드로 확인되는지 점검하는 것이 가장 먼저, 가장 저렴하게 확인해 볼 만한 사항 중 하나입니다.
도메인의 공개 DNS 주소를 확인해야 하나요? Domain IP Lookup 도구를 사용해 보세요.
이 주제의 무료 도구
관련 글
“DNS 서버”라는 이름을 공유하는 세 계층
스텁 리졸버
내 기기 자체
재귀 리졸버
ISP, 라우터, 1.1.1.1
권한 네임서버
도메인 자체의 DNS
재귀 리졸버와 권한 네임서버의 차이
‘DNS 서버’라는 말에는 전혀 다른 두 가지 역할이 섞여 있습니다. 질문을 대신 해 주는 재귀 리졸버와 답을 가진 권한 서버입니다.
실무에서 TTL 정하기
DNS TTL 이해하기: 변경이 반영되는 데 시간이 걸리는 이유
TTL은 DNS 응답이 다시 조회되기 전까지 캐시되는 시간을 정합니다. DNS 변경이 모든 곳에 즉시 나타나지 않는 진짜 이유입니다.
나란히 사용되는 두 가지 주소 체계
IPv4
192.0.2.10
32비트, 주소 약 43억 개, 고갈
IPv6
2606:4700::6810:84e5
128비트, 주소 340간 개
A 레코드와 AAAA 레코드: IPv4와 IPv6 쉽게 이해하기
A 레코드는 IPv4 주소를, AAAA 레코드는 IPv6 주소를 반환합니다. 한 도메인에 대한 두 개의 독립된 주소 체계와 둘 다 확인해야 하는 이유를 설명합니다.