Dns::CatalogZone

PoC of catalog zone (draft-muks-dnsop-dns-catalog-zones)
README in Japanese
supported name server softwares
- NSD4 (default)
- Knot dns
- YADIFA
Installation
$ git clone https://github.com/mimuret/dns-catalog_zone
$ cd dns-catalog_zone
$ bundle install --path=vendor/bundle
Usage
make CatalogZone file.
$ bundle exec catz init
$ cat CatalogZone
CatalogZone below
setting("catalog.example.jp") do |s|
s.software="nsd"
s.source="file"
s.zonename="catalog.example.jp"
s.zonefile="/etc/nsd/catalog.example.jp.zone"
end
config output to stdout
Settings attribute
| name |
value |
default |
description |
| zonename |
string(domain name) |
catalog.example |
catalog zone domain name |
| software |
string |
nsd |
software module name |
| source |
string |
file |
source module name |
| output |
string |
stdout |
output module name |
source modules
file module
| name |
value |
required |
| source |
file |
true |
| zonefile |
path |
true |
axfr module
| name |
value |
default |
required |
| source |
axfr |
|
true |
| server |
ip or hostname |
|
true |
| port |
int |
53 |
false |
| tsig |
string |
|
false |
| src_address |
ip |
|
false |
| timeout |
int |
30 |
false |
software modules
nsd module
| name |
value |
required |
| software |
nsd |
|
knot module
| name |
value |
required |
| software |
knot |
|
yadifa module
| name |
value |
required |
| software |
yadifa |
|
output modules
stdout module
| name |
value |
required |
| output |
stdout |
|
file module
| name |
value |
required |
| output |
file |
|
| output_path |
path |
true |
Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/mimuret/dns-catalog_zone.
OR make Dns::CatalogZone::Provider::(Software) gem
License
The gem is available as open source under the terms of the MIT License.