Giter Club home page Giter Club logo

coredns-redis's Introduction

coredns-redis

coredns-redis uses redis as a backend for coredns
this plugin should be located right next to etcd in plugins.cfg:

...
secondary:secondary
etcd:etcd
redis:github.com/rverst/coredns-redis/plugin
loop:loop
forward:forward
grpc:grpc
...

configuration

{
  redis {
    address HOST:PORT
    username USER
    password PASSWORD
    connect_timeout TIME_MS
    read_timeout TIME_MS
    ttl TIME_S
    prefix PREFIX
    suffix SUFFIX
  }
}
  • address is the address of the redis backend in form of host:port (defaults to localhost:6379)
  • username is the username for connectiong to the redis backend (optional)
  • password is the redis password (optional)
  • connect_timeout maximum time to establish a connection to the redis backend (in ms, optional)
  • read_timeout maximum time to wait for the redis backend to respond (in ms, optional)
  • ttl default ttl for dns records which have no ttl set (in seconds, default 3600)
  • prefix a prefix added to all redis keys
  • suffix a suffix added to all redis keys

example

corefile:

{
  .{
    redis {
      address localhost:6379
      username redis_user
      password super_secret
      connect_timeout 2000
      read_timeout 2000
      ttl 300
      prefix DNS_
      suffix _DNS
    }
  }
}

reverse zones

not yet supported

proxy

not yet supported

API

Package redis provides functions to manipulate (get, add, edit, delete) the data in the redis backend. The DNS zones are saved as hashmaps with the zone-name as key in the backend. While the data format is JSON at the moment, but I am considering switching to protobuf for performance reasons later.

credits

this plugin started as a fork of github.com/arvancloud/redis.

coredns-redis's People

Contributors

rverst avatar hawell avatar nulloranje avatar andrewayoub avatar arahmanhamdy avatar gotenxiao avatar bglimepoint avatar xmonader avatar ylmrx avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.