From ec9e8168e5b2d57678f85b9c5f03fe1e0e0782a1 Mon Sep 17 00:00:00 2001 From: Miek Gieben Date: Mon, 8 Mar 2021 12:15:20 +0100 Subject: [PATCH] plugin/file: add small zonefile example (#4509) Watching TGI Kubernetes 147 and it helps to show a small zonefile example in the documentation. Signed-off-by: Miek Gieben --- plugin/file/README.md | 29 +++++++++++++++++++++++------ 1 file changed, 23 insertions(+), 6 deletions(-) diff --git a/plugin/file/README.md b/plugin/file/README.md index 61bc15ade..d1bd42531 100644 --- a/plugin/file/README.md +++ b/plugin/file/README.md @@ -7,9 +7,9 @@ ## 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 () 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.