Sign inSign up

mutkoff/dnsdist

By mutkoff

•Updated 3 months ago

PowerDNS DNSdist loadbalancer version 1.9.15 (latest version of DNSdist)

Image
1

446

mutkoff/dnsdist repository overview

This is a Docker image with DNSdist DNS loadbalancer version 1.9.15 (latest version of DNSdist).

Usage

To download the image run (tag "latest" is version 1.9.15 of DNSdist)

docker pull mutkoff/dnsdist:latest

Next, you need to create a configuration file "dnsdist.conf" on your server and place the configuration in it. Example of the dnsdist.conf configuration file:

setECSSourcePrefixV4(32)

controlSocket("127.0.0.1:5199")
setKey("7GMzOY4XjPiGvc+rozJU9NScmr8jNdwk+0CJEGC4jsU")

webserver("0.0.0.0:8080")
setWebserverConfig({
  password="admin",
  apiKey="tto2K7rTS339rM7vbYRxVZWMnRvqPy0d6WVJUGZnEf4wRaz",
  statsRequireAuthentication=false,
  acl="127.0.0.1, ::1, 0.0.0.0/0"
})

setAPIWritable(false)

setLocal("0.0.0.0:53")

setACL({'0.0.0.0/0', '::/0'})

setServerPolicy(roundrobin)

cache = newPacketCache(10000, {maxTTL=86400, minTTL=0, temporaryFailureTTL=60,staleTTL=60, dontAge=false})
getPool(""):setCache(cache)

newServer({
  address="192.168.1.1",
  name="pdns-01",
  pool="pool-01",
  checkType="A",            
  checkName="google.com.",                            
  checkClass=DNSClass.IN,
  checkTimeout=1000,
  maxCheckFailures=2,
  checkInterval=2,
  mustResolve=true,
  useClientSubnet=true,
  rise=2
})

newServer({
  address="192.168.1.2",
  name="pdns-02",
  pool="pool-02",
  checkType="A",            
  checkName="google.com.",                            
  checkClass=DNSClass.IN,
  checkTimeout=1000,
  maxCheckFailures=2,
  checkInterval=2,
  mustResolve=true,
  useClientSubnet=true,
  rise=2
})

addAction(PoolAvailableRule("pool-01"), PoolAction("pool-01"))
addAction(AllRule(), PoolAction("pool-02"))
addAction(PoolAvailableRule("pool-02"), PoolAction("pool-02"))

setSecurityPollSuffix("")

After that, we create a docker-compose file in the same directory and adding the following configuration:

services:
  dnsdist:
    image: mutkoff/dnsdist:latest
    container_name: powerdns_dnsdist
    ports:
      - '53:53'
      - '53:53/udp'
      - '80:8080'
    volumes:
      - ./dnsdist.conf:/etc/dnsdist/dnsdist.conf

After successful launch, the web interface is available at:

http://localhost

Tag summary

Content type

Image

Digest

sha256:0c275e4fa…

Size

85.1 MB

Last updated

3 months ago

docker pull mutkoff/dnsdist