Określa początek strefy. Nie może być więcej niż jeden wpis SOA dla jednej strefy.
Format wpisu SOA:
name ttl addr-class entry-type origin person sesrial# refresh retry expire min
Poszczególne pola oznaczają:
name
Tutaj umieszczana jest nazwa host’a, na którym umieszczone są dane bazy. Zwykle jest nim główny serwer.
person
To pole definiuje login name i adres mail’owy osoby odpowiedzialnej za prowadzenie BIND’a/Hesiod’a w domenie lokalnej.
serial#
Pole przeznaczone jest na numer wersji pliku bazowego. Osoba edytująca pliki konfiguracyjne (master files) dla całej strefy powinna zwiększać o jeden wartość tego pola za każdym razem, kiedy dokonywane są zmiany w plikach. Zmiana numeru seryjnego informuje serwery drugorzędne (secondary servers) o konieczności dokonania zmian w plikach (skopiowania nowej informacji z głównego serwera). Maksymalna wartość wynosi 232-1 „po przecinku” (kropce oddzielającej wartości całkowite od dziesiętnych).
Numer seryjny pozwala na rozstrzygnięcie, która z dwóch kopii plików bazowych jest późniejsza. Zwykle serial # zaczyna się jedynką (1) i jest zwiększany o jeden za każdą zmianą zawartości pliku. Zaleca się używanie liczb naturalnych.
W praktyce używa się formatu rokmiesiącdzieńzmiana czyli np. wpis mogłby wyglądać tak: 1996050401.
refresh
Pole wyznacza jak często (w sekundach) serwer drugorzędny ma sprawdzać serwer główny, czy nie zachodzi potrzeba uaktualnienia plików. Jeżeli Pliki na serwerze drugorzędnym są nieaktualne (o czym świadczy inny serial # ) dane są kopiowane z głównego serwera.
Minimalny okres odświeżania to 30 sekund. Jeśli pole refresh nie zwiera żadnej wartości, dane nie są uaktualnianie automatycznie.
retry
To pole specyfikuje jak długo (w sekundach) drugorzędny server (secondary BIND/Hesiod server) będzie próbował odświeżyć dane, po tym jak podczas sprawdzania nastąpił błąd odświeżania. (Jeżeli server próbuje odświeżyć zawartość plików i kończy się to błędem, próbuje znowu, tyle sekund później, ile zostało zdefiniowane w tym polu).
expire
To pole określa dolny limit (w sekundach) czasu, w którym serwer drugorzędny może utrzymywać dane w cach’u bez potrzeby ich uaktualniania, lub do czasu, w którym serwer główny stwierdzi potrzebę uaktualnienia.
min
Pole specyfikuje domyślny minimalny czas ttl w przypadku, gdy pole ttl pozostawiono pustym.
Przykład:
Przykładowy wpis pola SOA. Średniki oznaczają komentarze – pierwsza linia określa pola dla łatwiejszej orientacji.
; name ttl addr-class entry-type origin person @ IN SOA utah.states.dec.com hes.utah.states.dec.com ( 1 ; sesrial 3600 ; refresh - co godzinę 300 ; retry co 5 minut 3600000 ; expire co 1000 godzin 86400 ) ; min - ttl wynosi 24 godziny
W powyższym przykładzie widać, że wartość ttl nie została zdefiniowana w polu ttl, co wskazuje na wyspecyfikowanie tej wartości w polu min.
Średniki pozwalają na zwiększenie czytelności zapisu i dodawanie komentarzy.