도메인 · DNS
Domain / Domain Name System
도메인이란?
- 도메인=사람이 외우는 주소
- DNS=주소를 IP로 바꿔줌
- 인터넷의 전화번호부
도메인과 DNS가 실제로 바꾸는 것은 주소와 서버를 떼어놓는 일입니다. 고객에게 IP를 직접 알려주면 서버를 옮기는 순간 그 주소는 죽지만, 앞에 도메인을 세워두면 뒤에 있는 서버가 국내 호스팅에서 클라우드로 바뀌어도 방문자는 같은 주소로 그대로 들어옵니다. 이전 작업에서 회사가 실제로 바꾸는 것은 서버가 아니라 레코드 한 줄이고, 명함과 카탈로그에 찍힌 주소는 건드릴 일이 없습니다.
실무에서 만지는 층은 두 개입니다. 도메인을 산 등록기관(가비아, 후이즈 등)에서 네임서버를 어디에 둘지 정하고, 그 네임서버 안에서 레코드를 씁니다. 레코드마다 담당하는 일이 완전히 다릅니다 — 웹은 A(도메인→IP)와 CNAME(도메인→다른 도메인), 메일 수신은 MX, 구글 워크스페이스 소유권 확인이나 스팸 방지(SPF)는 TXT입니다. 루트 도메인에는 원칙적으로 CNAME을 걸 수 없어 A 레코드나 업체별 별칭 기능을 써야 합니다. 레코드마다 붙는 TTL(캐시 유지 시간)은 보통 3600초인데, 서버 이전이 잡혔다면 하루 전에 300초로 미리 낮춰두는 것이 정석입니다. 참고로 DNS는 길만 알려줄 뿐, https 자물쇠(SSL 인증서)까지 책임지지는 않습니다.
가장 흔한 사고는 웹사이트를 옮기면서 레코드를 통째로 새로 만들다가 MX와 TXT를 빠뜨리는 경우입니다. 화면은 멀쩡히 열리니 아무도 모르다가, 영업팀이 '견적 문의 메일이 이틀째 한 통도 없다'고 말할 때 발견됩니다. 도메인 만료도 서버 장애만큼 자주 사이트를 내립니다 — 결제 카드가 만료된 채 담당자가 퇴사하면 어느 날 갑자기 주소가 끊깁니다. 또 안 열린다고 '전파가 덜 됐다'며 무작정 기다리는 일이 잦은데, 대개는 내 PC와 통신사에 남은 옛 캐시라서 다른 망이나 외부 조회 사이트로 먼저 확인해야 합니다.
DNS(도메인 네임 시스템)는 폴 모카페트리스(Paul Mockapetris)가 1983년에 설계했습니다. 늘어나는 인터넷 주소를 사람이 외울 수 있는 이름으로 다루기 위해 만들어졌습니다.
가상의 사례로 살펴보겠습니다. 임직원 38명, 연매출 210억 원인 건강기능식품 유통사 A사는 6년 만에 홈페이지를 리뉴얼하면서 호스팅을 국내 업체에서 클라우드로 옮기기로 했습니다. 그런데 도메인이 10년 전 퇴사한 직원 개인 계정으로 등록돼 있었고, 회사 메일 계정 40개가 같은 도메인을 쓰고 있었습니다. 오픈까지 남은 기간은 3주였습니다.
- 경영지원팀 박 차장이 등록기관 고객센터에 전화해 소유자 이전을 신청했습니다. 사업자등록증과 대표 신분증을 보내고 확인받는 데만 9일이 걸렸고, 만료일이 11개월밖에 남지 않았다는 것도 그때 알았습니다.
- 외주 개발사 대표가 '웹은 저희가 하지만 메일 레코드는 절대 손대지 마세요'라고 못 박아, 박 차장이 관리 화면을 캡처해 MX 4개와 TXT 2개를 엑셀에 그대로 옮겨 적어 두었습니다.
- 전환 이틀 전, 개발사 담당자가 A 레코드의 TTL을 3600초에서 300초로 낮췄습니다. 문제가 생겨 되돌릴 때 1시간을 기다릴 수는 없다는 이유였습니다.
- 일요일 밤 11시에 A 레코드를 새 서버 IP로 바꾸고, 마케팅팀 김 대리가 휴대폰 LTE와 사무실 와이파이 양쪽에서 접속을 확인했습니다. 사내 PC 3대만 옛 화면이 떠서 DNS 캐시를 비웠습니다.
- 전환 중 메일 유실은 0건, 사이트가 안 열린 시간은 12분이었습니다. 이후 도메인은 5년 치를 한 번에 갱신해 법인카드 자동결제를 걸었고, 관리 계정도 경영지원팀 공용 메일로 옮겼습니다.