plugin/file: add small zonefile example
Watching TGI Kubernetes 147 and it helps to show a small zonefile
example in the documentation.
## Description
The *file* plugin is used for an "old-style" DNS server. It serves from a preloaded file that exists
-on disk. If the zone file contains signatures (i.e., is signed using DNSSEC), correct DNSSEC answers
-are returned. Only NSEC is supported! If you use this setup *you* are responsible for re-signing the
-zonefile.
+on disk contained RFC 1035 styled data. If the zone file contains signatures (i.e., is signed using
+DNSSEC), correct DNSSEC answers are returned. Only NSEC is supported! If you use this setup *you*
+are responsible for re-signing the zonefile.
## Syntax
@@ -38,18 +38,32 @@ If you need outgoing zone transfers, take a look at the *transfer* plugin.
## Examples
-Load the `example.org` zone from `example.org.signed` and allow transfers to the internet, but send
+Load the `example.org` zone from `db.example.org` and allow transfers to the internet, but send
notifies to 10.240.1.1
~~~ corefile
example.org {
- file example.org.signed
+ file db.example.org
transfer {
to * 10.240.1.1
}
}
~~~
+Where `db.example.org` would contain RRSets (<https://tools.ietf.org/html/rfc7719#section-4>) in the
+(text) presentation format from RFC 1035:
+
+~~~
+$ORIGIN example.org.
+@ 3600 IN SOA sns.dns.icann.org. noc.dns.icann.org. 2017042745 7200 3600 1209600 3600
+ 3600 IN NS a.iana-servers.net.
+ 3600 IN NS b.iana-servers.net.
+
+www IN A 127.0.0.1
+ IN AAAA ::1
+~~~
+
+
Or use a single zone file for multiple zones:
~~~ corefile
@@ -92,4 +106,7 @@ example.org {
## See Also
See the *loadbalance* plugin if you need simple record shuffling. And the *transfer* plugin for zone
-transfers. Lastly the *root* plugin can help you specificy the location of the zone files.
+transfers. Lastly the *root* plugin can help you specify the location of the zone files.
+
+See [RFC 1035](https://www.rfc-editor.org/rfc/rfc1035.txt) for more info on how to structure zone
+files.
