Purpose of SOA record in DNS (apart from zone transfer)
Yes, the SOA
record serves a purpose regardless. While the SOA
record is not typically queried directly by regular clients it is returned in negative responses!
If you were to analyze your nameserver's responses rather than the incoming queries I think you would see the SOA
record a lot more.
However, some of the fields of the SOA
record are no longer relevant if the zone transfer method that is part of the DNS spec is not used.
If we take a look of the fields of the SOA
record:
MNAME
: name of master nameserver. Used in the context of dynamic updates as well as in some cases as part of the zone transfer implementation.
RNAME
: technical contact email. Not really used by the system itself but rather informational.
SERIAL
: zone serial number, used for zone transfers.
REFRESH
: refresh interval, used for zone transfers.
RETRY
: retry interval, used for zone transfers.
EXPIRE
: expire interval, used for zone transfers.
MINIMUM
: used to be the minimum TTL but is nowadays used as TTL for negative responses.
So we can see that MNAME
, RNAME
and MINIMUM
are not specific to the zone transfer spec.
Out of this, I would say that the way negative responses work in DNS and the SOA
MINIMUM
field in particular is the main reason why a SOA
record is necessary regardless of how zone synchronization is implemented.
Because of this, you simply can't implement a properly working authoritative nameserver without having SOA
record in each zone.