- supported types: A, NS, CNAME, PTR, DNAME, SOA, HINFO, MINFO, MX, AFSDB, RT,
                   KX, TXT, SPF, RP, AAAA, LOC, SRV, NAPTR, CERT, DS, SSHFP,
                   IPSECKEY, RRSIG, NSEC, KEY, DNSKEY, DHCID, NSEC3, NSEC3PARAM,
                   TLSA, CDS, CDNSKEY, APL, EUI48, EUI64, NID, L32, L64, LP,
                   URI, CAA, SMIMEA, OPENPGPKEY, CSYNC, ZONEMD, SVCB, HTTPS,
                   TYPE12345
- the class IN is supported only (CLASS12345 notation is not supported too)
- domain names can contain alphanumeric, '-', '_' and '/' characters
- \x and \DDD notations are allowed in domain names and in text strings
- @ can be used instead of domain names anywhere (excluding directives)
- directive $INCLUDE is allowed in included zone files (BEWARE of recursion)
- relative file path is relative to parent zone file
- line numbers of multiline records are numbers of the last lines with
  appropriate record parts
- items parts lengths must be multiples of 2 for HEX, 4 for base64 and 8 for
  base32hex blocks (but DHCID example from RFC is more general!)
- NSEC3 hash is with padding (but RFC 5155 section 3.3 says "unpadded")
- timestamps in RRSIG are limited to the end of year 2225
- zscanner doesn't make semantic control of parser rdata
- the following zone is considered ok with two records
- LP rdata are lower cased but shouldn't be
"""
.       a       (
        1.1.1.1
.       ns .
)
"""
