SOA 레코드란?
SOA(Start of Authority) 레코드는 DNS 영역에 대한 관리 정보를 담습니다. 기본 네임 서버, 책임 연락처, 영역 일련번호, 그리고 복제와 캐싱을 제어하는 타이머 등입니다. 모든 영역에는 정확히 하나의 SOA 레코드가 있으며, 그 아래의 모든 것에 대한 권한 표시자로서 영역의 최상단에 자리합니다.
SOA 레코드의 필드가 의미하는 것
SOA 레코드는 여러 필드를 담습니다. MNAME은 영역의 기본 마스터 네임 서버를 지정합니다. RNAME은 관리자의 이메일로, @ 기호 대신 점으로 표기합니다. serial은 보조 서버가 갱신을 감지하기 위해 지켜보는 버전 번호입니다. 이어서 네 개의 타이머가 옵니다. refresh(보조 서버가 변경을 얼마나 자주 확인하는지), retry(확인 실패 후 얼마나 기다릴지), expire(기본 서버에 도달할 수 없을 때 보조 서버가 응답을 멈추는 시점), 그리고 minimum(존재하지 않는 레코드에 대한 부정 캐싱 TTL을 설정)입니다.
SOA 조회 결과를 읽는 방법
IPeek는 영역의 SOA를 보여 줍니다. 기본 네임 서버, 책임 연락처, 현재 serial, 그리고 refresh, retry, expire, minimum 타이머입니다. 기본 네임 서버가 DNS 제공업체와 일치하는지 확인하세요. serial은 변경이 적용되었는지 확인하는 데 가장 유용합니다. 흔한 관례는 YYYYMMDDnn이므로 최근 날짜는 영역이 최근에 편집되었음을 의미합니다. 비정상적으로 짧거나 긴 타이머는 복제나 캐싱 문제를 암시할 수 있습니다. minimum 값은 리졸버가 부정(NXDOMAIN) 응답을 얼마나 오래 캐시할지 알려 줍니다.
SOA serial이 영역 복제를 제어하는 방법
serial 번호는 보조 네임 서버가 영역의 새 사본을 언제 가져올지 아는 방법입니다. 각 refresh 간격마다 보조 서버는 저장된 serial을 기본 서버의 것과 비교하며, 기본 서버의 것이 더 높으면 갱신된 영역을 전송받습니다. 즉, 영역을 편집할 때마다 serial을 증가시켜야 하며, 그렇지 않으면 보조 서버가 오래된 데이터를 계속 제공합니다. 이를 잊는 것은 변경이 기본 서버에는 나타나지만 백업 서버에는 나타나지 않는 고전적인 원인입니다. 대부분의 제공업체와 도구는 이를 자동으로 증가시킵니다.