카테고리 없음

DNS 도메인 서버의 SN(Serial Number)은 무엇이고 왜 중요할까?

싹다배워 2026. 9. 22. 13:51
반응형

DNS를 운영하다 보면 SOA(Start of Authority) 레코드에서 Serial Number, 줄여서 SN이라는 값을 보게 된다.
이 값은 해당 도메인의 DNS 존 정보가 몇 번째 버전인지를 나타내는 번호이다.

예를 들어 example.com의 DNS 설정을 수정해 새 레코드를 추가하거나 IP 주소를 변경했다면,

SOA 레코드의 SN도 함께 증가시켜야한다.

example.com. IN SOA ns1.example.com. admin.example.com. (
  2026092201 ; Serial Number
  3600       ; Refresh
  600        ; Retry
  1209600    ; Expire
  300        ; Minimum TTL
)

 

위 예시의 2026092201이 SN값이다.

흔히 YYYYMMDDNN 형식으로 관리한다.


즉, 2026년 9월 22일의 첫 번째 변경이라는 의미.


SN의 핵심 역할: DNS 설정 변경을 동기화하는 기준

DNS는 일반적으로 Primary DNS 서버와 Secondary DNS 서버 구조로 운영된다.

  • Primary DNS 서버: 원본 DNS 존 정보를 관리하는 서버
  • Secondary DNS 서버: Primary 서버의 정보를 복제해 서비스하는 서버

Secondary DNS 서버는 주기적으로 Primary 서버에 “내가 가진 SN보다 더 최신 버전이 있는가?”를 확인한다.

Primary의 SN이 더 크면, 변경된 DNS 정보를 가져와 동기화한다.

즉, SN은 Secondary DNS 서버가 DNS 설정 변경 여부를 판단하는 기준이다.


왜 중요한가?

1. DNS 변경 사항이 보조 서버에 반영된다

A 레코드, MX 레코드, CNAME 레코드 등 DNS 설정을 수정했더라도 SN을 올리지 않으면,

Secondary DNS 서버는 변경 사실을 알지 못할 수 있다.

그 결과 일부 사용자는 변경 전 IP로 접속하고,

일부 사용자는 변경 후 IP로 접속하는 등 일관성 없는 장애가 발생할 수 있다.

2. 장애 상황에서도 정확한 DNS 정보를 제공한다

Secondary DNS 서버는 Primary 서버에 장애가 발생해도 기존에 동기화한 DNS 정보를 계속 제공할 수 있다.
이때 SN이 정상적으로 관리되어야 모든 DNS 서버가 동일하고 최신인 설정을 유지할 수 있다.

3. 변경 이력을 쉽게 파악할 수 있다

날짜 기반 규칙(YYYYMMDDNN)을 사용하면 SN만 보고도 언제,

몇 번째로 DNS 설정이 변경되었는지 대략 확인할 수 있다.

 

예를 들면 다음과 같습니다.

  • 2026092201: 2026-09-22 첫 번째 변경
  • 2026092202: 2026-09-22 두 번째 변경
  • 2026092301: 다음 날 첫 번째 변경

운영 시 주의할 점

SN은 반드시 이전 값보다 큰 값이어야 한다.
값을 그대로 두거나 더 작은 값으로 변경하면 Secondary DNS 서버가 최신 정보로 인식하지 못할 수 있다.

또한 DNS 서버는 SN을 숫자로 비교하므로, 변경할 때마다 증가하는 규칙을 정해 일관되게 관리하는 것이 좋다.


정리

SN은 단순한 숫자가 아니라, DNS 서버 간 설정을 동기화하고 최신성을 보장하는 중요한 버전 관리 값이다.

DNS 레코드를 변경했는데 특정 환경에서만 반영되지 않는다면,

TTL뿐 아니라 SOA 레코드의 SN이 정상적으로 증가했는지도 확인해 볼 필요가 있다.

반응형