The pocket-dns package

[ Tags: bsd3, library, network, program ] [ Propose Tags ]

Multi-backend (zookeeper and sqlite) DNS Server using persistent-library


[Skip to Readme]

Properties

Versions 0.1.0, 0.1.1
Change log ChangeLog.md
Dependencies aeson, base (==4.*), bytestring, data-default, dns, http-conduit, iproute, monad-control, network, optparse-applicative, persistent (>=2.1 && <3), persistent-sqlite (>=2.1 && <3), persistent-template (>=2.1 && <3), persistent-zookeeper (==0.2.*), shelly, text, transformers, unordered-containers, yaml [details]
License BSD3
Author Junji Hashimoto
Maintainer junji.hashimoto@gmail.com
Category Network
Bug tracker https://github.com/junjihashimoto/pocket-dns/issues
Source repository head: git clone https://github.com/junjihashimoto/pocket-dns.git
Uploaded Fri Feb 27 11:45:18 UTC 2015 by junjihashimoto
Distributions NixOS:0.1.1
Executables pocket-dns
Downloads 330 total (10 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
Last success reported on 2015-05-20 [all 8 reports]
Hackage Matrix CI

Modules

  • Network
    • DNS
      • Network.DNS.Pocket
        • Network.DNS.Pocket.Server
        • Network.DNS.Pocket.Sqlite
        • Network.DNS.Pocket.Type
        • Network.DNS.Pocket.Zookeeper

Downloads

Maintainer's Corner

For package maintainers and hackage trustees


Readme for pocket-dns-0.1.1

[back to package description]

PocketDNS: Multi-backend (zookeeper and sqlite) DNS Server using persistent-library

Hackage version Build Status

PocketDNS is multi-backend (zookeeper and sqlite) DNS Server using persistent-library.

Getting started

Install this from Hackage.

cabal update && cabal install pocket-dns

Usage

Set conf.yml which is backend settings. When backend is zookeeper, conf.yml's format is below.

backend: zookeeper
coord: localhost:2181/
timeout: 300000
num-stripes: 1
idletime: 300000
max-resource: 30

When backend is sqlite, conf.yml's format is below.

backend: sqlite
database: pocket-dns.sqlite3
poolsize: 10

Then launch dns-server and set domain and ip-address.

pocket-dns daemon &
pocket-dns set <domain>. <ip-address>

When domain is not found, pocket-dns checks '/etc/resolv.conf'.

Commands

Set

Set ip-address of domain

pocket-dns set <domain-name>. <ip-address>

get

Show ip-address of domain

pocket-dns get <domain-name>.

list

Show all domain and ip-address

pocket-dns list

delete

Delete domain

pocket-dns delete <domain-name>.

daemon

Launch dns-server

pocket-dns daemon